hushd is a Hush service daemon, which is a program that runs in the background and with which a user can’t usually interact directly during it’s runtime. This is a full node server that downloads that creates a P2P network and synchronizes the blockchain and verifies transactions and blocks.
hush-cli is a command-line interface for Hush Core client that connects to a running instance of hushd daemon. User can interact with this program and do any necessary functions with it that will control the hushd service as well as the possibility of using a Hush wallet to send and receive funds, among other functions that Hush Core client provides.
git clone https://github.com/MyHush/hush3.git
cd hush3
# Build
./zcutil/build.sh -j8
To use locally, first start the program in daemon mode:
hushd -daemon
Then you can execute API commands, e.g.:
hush-cli getinfo
hush-cli listtransactions
To stop the Hush daemon, execute:
hush-cli stop
hushd software, and are made available through the hush-cli software.getaddressbalance ‘{ “addresses” : [ “address” , … ] }’
The getaddressbalance method returns the confirmed balance for an address, or addresses. It requires addressindex to be enabled.
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the address |
| Name | Type | Description |
|---|---|---|
| “balance” | (number) | the current confirmed balance in satoshis |
| “received” | (number) | the total confirmed number of satoshis received (including change) |
./hush-cli getaddressbalance '{"addresses":["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"]}'
Response:
{
balance: 40000,
received: 1011916229
}
You can find the rpcuser, rpcpassword, and rpcport in huhs3.conf file.
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddressbalance", "params": [{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"]}] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport
Response:
{
"result": {
"balance": 40000,
"received": 1011916229
},
"error": null,
"id": "curltest"
}
getaddressdeltas ‘{ “addresses” : [ “address” , … ] }’
getaddressdeltas ‘{ “addresses” : [ “address” , … ] , “start”: start, “end”: end, “chainInfo”: boolean }’
The getaddressdeltas method returns all confirmed balance changes of an address. The user can optionally limit the response to a given interval of blocks. The method requires addressindex to be enabled.
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the address |
| “start” | (number) | the start block height |
| “end” | (number) | the end block height |
| “chainInfo” | (boolean) | include chain info in results (only applies if start and end specified) |
| Name | Type | Description |
|---|---|---|
| “satoshis” | (number) | the difference in satoshis |
| “txid” | (string) | the related transaction id |
| “index” | (number) | the related input or output index |
| “height” | (number) | the block height |
| “address” | (string) | the address |
./hush-cli getaddressdeltas '{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"]}'
Reponse:
[
{
"satoshis": 1011876229,
"txid": "39c61e8ea769ba1fc971cb7dadc531f25a2528d01a4244f379043248b6c51cc1",
"index": 0,
"blockindex": 0,
"height": 1,
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"
}
]
Command:
./hush-cli getaddressdeltas '{"addresses":["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"],"start":1,"end":200,"chainInfo":true}'
Response:
{
"deltas": [
{
"satoshis": 1011876229,
"txid": "39c61e8ea769ba1fc971cb7dadc531f25a2528d01a4244f379043248b6c51cc1",
"index": 0,
"blockindex": 0,
"height": 1,
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"
}
],
"start": {
"hash": "022df4cd1b0bdf548fedc48f27c6367536a560857f61f9bec4b35179c8a45734",
"height": 1
},
"end": {
"hash": "001fd35407abd8f4e2ec9734ce6f91d820ff553efcb9c39d657afed84da84963",
"height": 200
}
}
You can find the rpcuser, rpcpassword, and rpcport in huhs3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddressdeltas", "params": [{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"]}] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"satoshis": 1011876229,
"txid": "39c61e8ea769ba1fc971cb7dadc531f25a2528d01a4244f379043248b6c51cc1",
"index": 0,
"blockindex": 0,
"height": 1,
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"
}
],
"error": null,
"id": "curltest"
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddressdeltas", "params": [{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"],"start":1,"end":200,"chainInfo":true}]}' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"deltas": [
{
"satoshis": 1011876229,
"txid": "39c61e8ea769ba1fc971cb7dadc531f25a2528d01a4244f379043248b6c51cc1",
"index": 0,
"blockindex": 0,
"height": 1,
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"
}
],
"start": {
"hash": "022df4cd1b0bdf548fedc48f27c6367536a560857f61f9bec4b35179c8a45734",
"height": 1
},
"end": {
"hash": "001fd35407abd8f4e2ec9734ce6f91d820ff553efcb9c39d657afed84da84963",
"height": 200
}
},
"error": null,
"id": "curltest"
}getaddressmempool ‘{ “addresses” : [ “address” , … ] }’
The getaddressmempool method returns all mempool deltas for an address, or addresses. The method requires addressindex to be enabled.
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the address |
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the address |
| “txid” | (string) | the related txid |
| “index” | (number) | the related input or output index |
| “satoshis” | (number) | the difference in satoshis |
| “timestamp” | (number) | the time the transaction entered the mempool (seconds) |
| “prevtxid” | (string) | the previous txid (if spending) |
| “prevout” | (string) | the previous transaction output index (if spending) |
./hush-cli getaddressmempool '{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"]}'
Response:
[
{
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb",
"txid": "55c9830c0b2efcbbbac4fb813ff0d85722c6d720a748459287b60ef96cdb6732",
"index": 1,
"satoshis": 200000000,
"timestamp": 1536356143
}
]
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddressmempool", "params": [{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"]}] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb",
"txid": "55c9830c0b2efcbbbac4fb813ff0d85722c6d720a748459287b60ef96cdb6732",
"index": 1,
"satoshis": 200000000,
"timestamp": 1536356143
}
],
"error": null,
"id": "curltest"
}getaddresstxids ‘{ “addresses” : [ “address” , … ] }’
The getaddresstxids method returns the txids for an address, or addresses. It requires addressindex to be enabled.
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the address |
| “start” | (number) | the start block height |
| “end” | (number) | the end block height |
| Name | Type | Description |
|---|---|---|
| “transaction_id” | (string) | the transaction id |
hush-cli getaddresstxids '{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb","RQUAkqRiRMqxcNrB29B4duTK4qkqfV9HVJ"]}'
Response:
[
"39c61e8ea769ba1fc971cb7dadc531f25a2528d01a4244f379043248b6c51cc1",
"800e4331018d02458ff4f2a7722f0508b810f7fcf53bc1c5ac85aec4e5fa706b",
"2a3c3664851370ff762b47d735cc661e3dbce4cf36b6c1b74799f3b1c847bd52",
"275f8383d85c0873c91ebfea3917d4136c89f43526da053177922d6c036634af"
]
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddresstxids", "params": [{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"]}] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
"39c61e8ea769ba1fc971cb7dadc531f25a2528d01a4244f379043248b6c51cc1",
"800e4331018d02458ff4f2a7722f0508b810f7fcf53bc1c5ac85aec4e5fa706b",
"2a3c3664851370ff762b47d735cc661e3dbce4cf36b6c1b74799f3b1c847bd52",
"275f8383d85c0873c91ebfea3917d4136c89f43526da053177922d6c036634af"
],
"error": null,
"id": "curltest"
}getaddressutxos ‘{ “addresses” : [ “address” , … ], “chaininfo” }’
The getaddressutxos method returns all unspent outputs for an address. It requires addressindex to be enabled.
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the address |
| “chainInfo” | (boolean) | include chain info with results |
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the address |
| “txid” | (string) | the output txid |
| “height” | (number) | the block height |
| “outputIndex” | (number) | the output index |
| “script” | (string) | the script hex encoded |
| “satoshis” | (number) | the number of satoshis of the output |
./hush-cli getaddressutxos '{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"]}'
Response;
[
{
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb",
"txid": "2a3c3664851370ff762b47d735cc661e3dbce4cf36b6c1b74799f3b1c847bd52",
"outputIndex": 0,
"script": "2102e0d9ea73a391400ed2cb090e029d3f03eda0efaf371da11f436c076d817025e4ac",
"satoshis": 10000,
"height": 3
}
]
Command:
./hush-cli getaddressutxos '{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"], "chainInfo": true}'
Response:
{
"utxos": [
{
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb",
"txid": "2a3c3664851370ff762b47d735cc661e3dbce4cf36b6c1b74799f3b1c847bd52",
"outputIndex": 0,
"script": "2102e0d9ea73a391400ed2cb090e029d3f03eda0efaf371da11f436c076d817025e4ac",
"satoshis": 10000,
"height": 3
}
],
"hash": "0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084",
"height": 398}
You can find the rpcuser, rpcpassword, and rpcport in the hush3.conf file.
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddressutxos", "params": [{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"]}] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb",
"txid": "2a3c3664851370ff762b47d735cc661e3dbce4cf36b6c1b74799f3b1c847bd52",
"outputIndex": 0,
"script": "2102e0d9ea73a391400ed2cb090e029d3f03eda0efaf371da11f436c076d817025e4ac",
"satoshis": 10000,
"height": 3
}
],
"error": null,
"id": "curltest"
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddressutxos", "params": [{"addresses": ["RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb"], "chainInfo": true}] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"utxos": [
{
"address": "RTTg3izdeVnqkTTxjzsPFrdUQexgqCy1qb",
"txid": "2a3c3664851370ff762b47d735cc661e3dbce4cf36b6c1b74799f3b1c847bd52",
"outputIndex": 0,
"script": "2102e0d9ea73a391400ed2cb090e029d3f03eda0efaf371da11f436c076d817025e4ac",
"satoshis": 10000,
"height": 3
}
],
"hash": "0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084",
"height": 398
},
"error": null,
"id": "curltest"
}getsnapshot top
The getsnapshot method returns a snapshot of addresses and their amounts at the Smart Chain’s current height.
The method requires addressindex to be enabled.
| Name | Type | Description |
|---|---|---|
| “top” | (number, optional) | Only return this many addresses, i.e. top N rich list |
| Name | Type | Description |
|---|---|---|
| “addresses” | (array of jsons) | the array containing the address and amount details |
| “addr” | (string) | an address |
| “amount” | (number) | the amount of Hush in the above address |
| “total” | (numeric) | the total amount in snapshot |
| “average” | (numeric) | the average amount in each address |
| “utxos” | (number) | the total number of utxos in snapshot |
| “total_addresses” | (number) | the total number of addresses in snapshot, |
| “start_height” | (number) | the block height snapshot began |
| “ending_height” | (number) | the block height snapshot finished, |
| “start_time” | (number) | the unix epoch time snapshot started |
| “end_time” | (number) | the unix epoch time snapshot finished |
./hush-cli getsnapshot 5
Response:
{
"start_time": 1552473201,
"addresses": [
{
"addr": "RRyyejME7LRTuvdziWsXkAbSW1fdiohGwK",
"amount": "6193787.46198546",
"segid": 13
},
{
"addr": "RNaNh2fDvnoimuFGSFtp2c6xb5pN7mMWQV",
"amount": "6169247.09074260",
"segid": 44
},
{
"addr": "RTu3JZZKLJTcfNwBa19dWRagEfQq49STqC",
"amount": "5124337.23955756",
"segid": 61
},
{
"addr": "RBpEnyzuQNj1hNdAG1pKLALpAWEUS67PBj",
"amount": "3029259.10629025",
"segid": 24
},
{
"addr": "RCyANUW2H5985zk8p6NHJfPyNBXnTVzGDh",
"amount": "2700034.72826615",
"segid": 48
}
],
"total": 23216665.62684202,
"average": 4643333,
"utxos": 2416430,
"total_addresses": 5,
"ignored_addresses": 31,
"start_height": 1266933,
"ending_height": 1266933,
"end_time": 1552473348
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getsnapshot", "params": ["5"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"start_time": 1552473714,
"addresses": [
{
"addr": "RRyyejME7LRTuvdziWsXkAbSW1fdiohGwK",
"amount": "6193787.46198546",
"segid": 13
},
{
"addr": "RNaNh2fDvnoimuFGSFtp2c6xb5pN7mMWQV",
"amount": "6169247.09074260",
"segid": 44
},
{
"addr": "RTu3JZZKLJTcfNwBa19dWRagEfQq49STqC",
"amount": "5124337.23955756",
"segid": 61
},
{
"addr": "RBpEnyzuQNj1hNdAG1pKLALpAWEUS67PBj",
"amount": "3029259.10629025",
"segid": 24
},
{
"addr": "RCyANUW2H5985zk8p6NHJfPyNBXnTVzGDh",
"amount": "2700034.72826615",
"segid": 48
}
],
"total": 23216665.62684202,
"average": 4643333,
"utxos": 2416443,
"total_addresses": 5,
"ignored_addresses": 31,
"start_height": 1266941,
"ending_height": 1266941,
"end_time": 1552473829
},
"error": null,
"id": "curltest"
}
hushd software, and are made available through the hush-cli software.coinsupply height
The coinsupply method returns the coin supply information for the indicated block height. If no height is given, the method defaults to the blockchain’s current height.
::: tip
To use this method for large block heights, first execute the method for a small block height, such as 1000. Then execute the method for an incrementally higher block height, such as 10000. Continue increasing the height until reaching the desired height.
:::
| Name | Type | Description |
|---|---|---|
| “height” | (integer, optional) | the desired block height |
| Name | Type | Description |
|---|---|---|
| “result” | (string) | whether the request was successful |
| “coin” | (string) | the ticker symbol of the coin for Smart Chains, otherwise KMD |
| “height” | (integer) | the height of this coin supply data |
| “supply” | (float) | the transparent coin supply |
| “zfunds” | (float) | the shielded coin supply (in zaddrs) |
| “sprout” | (float) | the sprout coin supply (in zcaddrs) |
| “total” | (float) | the total coin supply, i.e. sum of supply + zfunds |
./hush-cli coinsupply 80000
Response:
{
"result": "success",
"coin": "KMD",
"height": 80000,
"supply": 100239878.15241314,
"zfunds": 86.999868,
"sprout": 86.999868,
"total": 100239965.15228114
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "coinsupply", "params": ["80000"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"result": "success",
"coin": "KMD",
"height": 80000,
"supply": 100239878.15241314,
"zfunds": 86.999868,
"sprout": 86.999868,
"total": 100239965.15228114
},
"error": null,
"id": "curltest"
}getbestblockhash
The getbestblockhash method returns the hash of the best (tip) block in the longest block chain.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “hex” | (string) | the block hash, hex encoded |
./hush-cli getbestblockhash
Response:
0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getbestblockhash", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084",
"error": null,
"id": "curltest"
}getblock hash|height ( verbose )
The getblock method returns the block’s relevant state information.
The verbose input is optional. The default value is true, and it will return a json object with information about the indicated block. If verbose is false, the command returns a string that is serialized hex-encoded data for the indicated block.
| Name | Type | Description |
|---|---|---|
hash OR height |
string OR number, respectively |
the block hash OR the block height |
| verbose | (boolean, optional, default=true) | true returns a json object, false returns hex-encoded data |
| Name | Type | Description |
|---|---|---|
| “hash” | (string) | the block hash (same as provided hash) |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations (number of blocks on top of this block); the returned value is -1 if the block is not on the main chain |
| “size” | (numeric) | the block size |
| “height” | (numeric) | the block height or index (same as provided height) |
| “version” | (numeric) | the block version |
| “merkleroot” | (string) | the merkle root |
| “tx” : [ “transaction_id” ,…] | (array of strings) | |
| “time” | (numeric) | the block time in seconds since epoch (Jan 1 1970 GMT) |
| “nonce” | (numeric) | the nonce |
| “bits” | (string) | the bits |
| “difficulty” | (numeric) | the difficulty |
| “previousblockhash” | (string) | the hash of the previous block |
| “nextblockhash” | (string) | the hash of the next block |
| Name | Type | Description |
|---|---|---|
| “data” | (string) | a string that is serialized, hex-encoded data for the indicated block |
./hush-cli getblock "0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320"
Response:
{
"hash": "0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320",
"confirmations": 1,
"rawconfirmations": 1,
"size": 26321,
"height": 1268723,
"version": 4,
"merkleroot": "9cdd912d6aa82a5f55db4a79bb2181a74485df386c80e3936ce46d6e35f64d78",
"segid": -1,
"finalsaplingroot": "1ccce5445c492209c1d6e3e0bf21711e6f4012fddb724073dca473eb34a7d8a2",
"tx": [
"d500535236301413318ca05abc99a3136b3f72111ab06683f0e03ded15ec5663",
"d7f9b34ad3e86f48fce55dbec1f2925b8dcbd15199977fd75d224254db9ae80d",
"29939ca572cc61ddb67dbeab4e17c885213c367231cfc02419d5c9f44d2a92e0",
"7ed658dbb045195f5dd39a2e4c0e9e70c4d1088fde446f563d297612401a61b1",
"bdbc36996104f8b33bd5c82c678493bddf8d562bb5c8f5d796ace8b09b21d6a8",
"c89e4bcb285b97f3da9ffcb43bb8e300fb3a3911352f47495730c75cabe04ff0",
"9ee811357a9d4ed1d3844b426dd5fd8fcb386336d65eddae488ac8d1fc2af69b",
"89c2c61ed95901714dac57bc8720e436af0fe156bece05da1e894fd96e029f77",
"c3b308f768bcc3c748a12d8883176b4ff3e44bd5fab42b06306e281804c7c8ba",
"a8cdac6943562ac051bed5c6cd6e515498c4ccbc5389580dce2f58ff0e103ba5",
"f310e661ab39ff600ec2c98e9c0afd2f0652ce14c423fcf8d13a8e25616b0580",
"a077fab812d8a35c998e3178fa945c2575dc5010d703960f71f16989d6f858de",
"ca0672f70d5f668d806a8265fd607237ab718b66fb4c67a841fd7677ed5b208a",
"40670bb9ee51a9370d8849f58ed219aa42a5206b46281dd8639ddf8a30e22316",
"ae980edde333720483cb6db0f633e2d3825e9aa1d46a0db67faad3a56f7c8e7f",
"a8f81af1e3cf7dee220a8348f0addd33cd961ca640a79dee0eb64ead9c566c1e",
"2250c19f3ae06625644b8b3a455c323a44d2ca5746fe5b3671941e56d20be613"
],
"time": 1552582977,
"nonce": "000054c888f9f2c08f1b0112d10ab6b739fc7f0f324dd15277efc3eaa634000a",
"solution": "00bfd611d3c531f8a3e962cd46d62109685518a2ed078c0ea1ed4b555db2ed5108603aaedd3ee98ac463084a50d2080a9384a1bb718053a08a55507fce56b83694930194e91bab7260b79bfffd520e5d973c2c9e01221b74d7544383712ca1033ea2caaa499efdf59e06c3f423689c7a7b7a2f5345cbcae6f26afdb7d8300462848ffb1ae69f2f11f13d3f52ebac8aca51f6721a056d8ac5525517ca4079442fdac19ac0b5f7b66004b8448286090b4b29f390b58272157eaa733d011d14cfcaa19813b692e5057556a35dc86e0da613f46605ba7f4ec88ddec30ead8b4b5df032bef638da39092a7d39661723d0b7ea07a5d6fd422fcf423efdd1a90ad094c444481ae950dc41e02d20044555623cec5b2679873fa44ef75acf1c592ca96765f28f3b5f853219b1b140e2467aef56e5b71aca6a4a86d9c918504b2758fbcc8812b9332f7fe52309e95d455f9a7e49c300f17511590fd33befc370e5a5619602732299dad7227e21e4271f6767873a43132dc08c4d488a310c7105b2a45d4536bff1b7cb70f0d68f5e996050cc55da23bf86fb3ad10e3b9028a48a8ef2376a2c2039210409d5b85a922dbe3d7ddbd399e632435957a776c9bc0a77ad8a62d623f0f15df49e543d869d51790cadee496b36bf6368ebb568ed69cf3578913aa097f99eb86b2e2701691bba85fc7d383aede90317877cdcaa4803610fea9d42729635cc623cb7397279c426fb5cee0cab13f3a217a456cd61a34dbc5990cde5de55b0ac12e8429a2e586298f3e8313febe6e6b1f590f885432433aac18d6e7b7b99f3425720d35b30d8b234475c04f09951df512cfc947fb4237cd0279ad276f86de910c30b79da45b7e76531f4bce2e8d03dfbbf11ee5712c9c92c69a96d69b05cb18e418f4e98b3c067e5cb19de2375865b51450a79e80a4fc5a5c716b0bee64b0256542f0a6f9871c02656d90846dca9fb381519682397514f522b3045ce88744f2b5af53d51b4bac3d409139a6b588309e90bbc836ea079e4e4eed7eae7ab0f1871bd6aee35cd7637d3525153ca2d77c1eebc010a5a905e8ed9b97bb18427592c60bd52c13e7e7fa5191323a5f6b03b4dbf2074edf97087b6340ab3dcc11a56bb04c89a22e2f6f8c27123561800e55e1afae61abd2c2809ddf3fbad93e372e2d1febf6f2e9f7e7a0489069e7a927e37025b32661b9c0fc576ac2dd3db4fe79331e4a48ff54c848a45a7679fdee69899af2320a5cd338b8f15f732d353a95ecf16ed82290d073f22381bc7d81743b7ea8343ac20c25fda4f179f142f10a2a2f6f556cc12de3c728a1ae005ed954752558c1a81ff709ea10f49b80774eca5bcf681a7dc2e5101151c95f94fc80df2ecd9c334ed75195a81bc7a0bfe1af5c3f7703de3dff447f338d819d789a725dcac6c028f0a9a43cc8fd140abb0d40a630a84fbdd751c2a08c28f7fd1d376f98c0fc418f4f0929de03f3038640388abc0ee44a14d7094130e0b503a61a6229f10891ab90dc9c9cc76469c0ab30f7fca9386760676194e04a8db6d2506ecaba8e800bccbe2ddc53d46b9771307445efbf15454e35f5a30bb4cf9aedd129bacd19d05c63645c9589e73829ba5abd87e0bee0fccbb06e4214acbee7c240d1586e05a9a50f0661712e4dc9e71050b36dbc7133bfd32df2cc8ddf9356fd4701f37f32635d3a7be0a50b6d6b85597d95a948df1f91a58a70a221cdc1e880ce1a54644ec91eabd7625497f02e02b291381978ccbdd4761e3ca0128efa146a0ea4e9a13003bc1558db863c2a183460455a0560bc75c7f061449714ddc5431458483630fc3ff769e78c71901ea1e516e5fe04cd0a553f5f2403afaef2e33c31eb55d326c030d76e188676099b5b9f43f100afe25994feb",
"bits": "1d01e71c",
"difficulty": 132777470.6040096,
"chainwork": "000000000000000000000000000000000000000000000000000241daab323e77",
"anchor": "4e43e43d3569c1155cc9340f46b58425e3d86890076739f19298bc66e6a7acf2",
"blocktype": "mined",
"valuePools": [
{
"id": "sprout",
"monitored": true,
"chainValue": 84948.93692198,
"chainValueZat": 8494893692198,
"valueDelta": 0.0,
"valueDeltaZat": 0
},
{
"id": "sapling",
"monitored": true,
"chainValue": 3.07618319,
"chainValueZat": 307618319,
"valueDelta": 0.0,
"valueDeltaZat": 0
}
],
"previousblockhash": "0474f6be4f1efb132cfedc252559ef3aee166e6bb58e99160edcf029d13f8017"
}
Command:
./hush-cli getblock "0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320" false
Response:
0400000017803fd129f0dc0e16998eb56b6e16ee3aef592525dcfe2c13fb1e4fbef67404784df6356e6de46c93e3806c38df8544a78121bb794adb555f2aa86a2d91dd9ca2d8a734eb73a4dc734072dbfd12406f1e7121bfe0e3d6c10922495c44e5cc1c41898a5c1ce7011d0a0034a6eac3ef7752d14d320f7ffc39b7b60ad112011b8fc0f2f988c8540000fd400500bfd611d3c531f8a3e962cd46d62109685518a2ed078c0ea1ed4b555db2ed5108603aaedd3ee98ac463084a50d2080a9384a1bb718053a08a55507fce56b83694930194e91bab7260b79bfffd520e5d973c2c9e01221b74d7544383712ca1033ea2caaa499efdf59e06c3f423689c7a7b7a2f5345cbcae6f26afdb7d8300462848ffb1ae69f2f11f13d3f52ebac8aca51f6721a056d8ac5525517ca4079442fdac19ac0b5f7b66004b8448286090b4b29f390b58272157eaa733d011d14cfcaa19813b692e5057556a35dc86e0da613f46605ba7f4ec88ddec30ead8b4b5df032bef638da39092a7d39661723d0b7ea07a5d6fd422fcf423efdd1a90ad094c444481ae950dc41e02d20044555623cec5b2679873fa44ef75acf1c592ca96765f28f3b5f853219b1b140e2467aef56e5b71aca6a4a86d9c918504b2758fbcc8812b9332f7fe52309e95d455f9a7e49c300f17511590fd33befc370e5a5619602732299dad7227e21e4271f6767873a43132dc08c4d488a310c7105b2a45d4536bff1b7cb70f0d68f5e996050cc55da23bf86fb3ad10e3b9028a48a8ef2376a2c2039210409d5b85a922dbe3d7ddbd399e632435957a776c9bc0a77ad8a62d623f0f15df49e543d869d51790cadee496b36bf6368ebb568ed69cf3578913aa097f99eb86b2e2701691bba85fc7d383aede90317877cdcaa4803610fea9d42729635cc623cb7397279c426fb5cee0cab13f3a217a456cd61a34dbc5990cde5de55b0ac12e8429a2e586298f3e8313febe6e6b1f590f885432433aac18d6e7b7b99f3425720d35b30d8b234475c04f09951df512cfc947fb4237cd0279ad276f86de910c30b79da45b7e76531f4bce2e8d03dfbbf11ee5712c9c92c69a96d69b05cb18e418f4e98b3c067e5cb19de2375865b51450a79e80a4fc5a5c716b0bee64b0256542f0a6f9871c02656d90846dca9fb381519682397514f522b3045ce88744f2b5af53d51b4bac3d409139a6b588309e90bbc836ea079e4e4eed7eae7ab0f1871bd6aee35cd7637d3525153ca2d77c1eebc010a5a905e8ed9b97bb18427592c60bd52c13e7e7fa5191323a5f6b03b4dbf2074edf97087b6340ab3dcc11a56bb04c89a22e2f6f8c27123561800e55e1afae61abd2c2809ddf3fbad93e372e2d1febf6f2e9f7e7a0489069e7a927e37025b32661b9c0fc576ac2dd3db4fe79331e4a48ff54c848a45a7679fdee69899af2320a5cd338b8f15f732d353a95ecf16ed82290d073f22381bc7d81743b7ea8343ac20c25fda4f179f142f10a2a2f6f556cc12de3c728a1ae005ed954752558c1a81ff709ea10f49b80774eca5bcf681a7dc2e5101151c95f94fc80df2ecd9c334ed75195a81bc7a0bfe1af5c3f7703de3dff447f338d819d789a725dcac6c028f0a9a43cc8fd140abb0d40a630a84fbdd751c2a08c28f7fd1d376f98c0fc418f4f0929de03f3038640388abc0ee44a14d7094130e0b503a61a6229f10891ab90dc9c9cc76469c0ab30f7fca9386760676194e04a8db6d2506ecaba8e800bccbe2ddc53d46b9771307445efbf15454e35f5a30bb4cf9aedd129bacd19d05c63645c9589e73829ba5abd87e0bee0fccbb06e4214acbee7c240d1586e05a9a50f0661712e4dc9e71050b36dbc7133bfd32df2cc8ddf9356fd4701f37f32635d3a7be0a50b6d6b85597d95a948df1f91a58a70a221cdc1e880ce1a54644ec91eabd7625497f02e02b291381978ccbdd4761e3ca0128efa146a0ea4e9a13003bc1558db863c2a183460455a0560bc75c7f061449714ddc5431458483630fc3ff769e78c71901ea1e516e5fe04cd0a553f5f2403afaef2e33c31eb55d326c030d76e188676099b5b9f43f100afe25994feb110400008085202f89010000000000000000000000000000000000000000000000000000000000000000ffffffff0603f35b130101ffffffff01a45eec110000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0acdf888a5c0000000000000000000000000000000400008085202f8911cf79748330cd7d67df0b02722b7e1dd2f977d11267ae8cfc5da8011687e10067010000006a47304402201a1dc90dd58cbdc3ab8bf08344b1a49621f79699ef1a877bdece6c9d2f23c02d0220093f14e9c961eda05508b444cf1623ddbaccf7fbe8d9b9df55807bd9ddd096f20121026d3e36b748a4a28168e160ad017fcbb153e9bf29f92b716e320b5838e0df13f5feffffffa8f62f92d378e6d6b2c6d53b7093cd6177894903ae9d62c5afe1ac91399fead5010000006b483045022100af219cf9a0407f4445823c40e9eb4889bd06270935133fda7e4377ef35d6672402202bc58076e6358f95f128937be1fbcf7ab3222859b1661bd8e04ee7e228d86334012103deffacc2b2abe0b64a513bd09aeceae93422274c4f6dd46874ee0d166966e889feffffff3b246ca457247f8a1d3b1f45d27d047422e63bceff050e897081cba9c8a9d518010000006a4730440220676bd83477be45fcf88b6701ef054e857797dc5efbc73fd07322cb70cd21fd700220592d07feb5efca70b0e0b998d85f63a67e6842fdb2ad66e198610042f1bf1641012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447fefffffff9ff833e59b0576305debd4973b24e4170806dffac00aa2c390b89d041ea1628000000006a4730440220432793afe567b2a1df9302687669f7c2ab08878651cf233e2a68bbd8c6bc2e5c0220371e911ba8b599853bd2db05ed90e2efac2b82280deb1595c6d8fb778e270477012103b71f3d1a526b141bb44997c9ed67e0136d64f72e949ce33d7a4226a3365b8082feffffff7b7f64b975d918854bab3c3d3d755d7fe1c61badcb503abc9c8b58c6bbf9ac23010000006b483045022100e595a0dc487a35ec4d2e5b95d61f418cd52b2dece19b8145ec0cc8b28fd3d8d102202057ce268a3bcba958baa1e754d55c6f9f4df8d3ea53b27fe22891ae45c01ff6012103e03208fa3305d0cb6f9e54776ce9fa5cbd33e38c4c11b956cd1fa3ce3d90362efeffffffb67d626406d94b63c3a5635129d120558cef35fc12c055ca06afd7488791c6e2010000006a47304402207929a4e3f9d7ef687f06e69b35a74b1b4841900192aca5f045e70a6b0c9ba983022064b9cb5e58c93c649edf270caa8e433de646a84bb597dd1cb4d81dee5d21de7b012103e27acf9d3dcf716acc3006be22e114562eb56c357f9f17200ab6672f3b4fd10cfeffffffe2cf2e582587e66181bf3c6139d56e8b3ea77af43895f72fab3d57a91d0e9758010000006b483045022100b3c48ccb4dd70ecba2b84e92d5477bc25ec5ec5df4666c2c6028d6979bd8c1c5022063773c0fc45efca514ae79f035871d45337243522456af63b272f7fc1bffa323012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffff6e619be941c4d51abf1280f60022dfae75705850cffd95598655dfd17eb2ae2e010000006b483045022100b068f52abc1ce15a18231cd3f6a833debabace07bc58f69afa89e743a97effae02204ab80dfa53ad7a1269cb66daccf860e9b3d92856ba61f07d26c18f33b158d8d7012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffff253288df87fe5d7f351246c9bf66766150039fefd238921b77d8407828c2187e000000006a473044022057eb9bdc2761b70045161a25371c3a94ff7edb7e188fa166341da3f305da873f02203a754e919b5a5bfd09f8cd77dde71eb3d5330c06484137a03d50f5300d51c680012102ac0637e418fa018d46c8636d9c1dc1ae7fee59b24b8be73a2e17fdf8d5dc7dadfeffffff49424c834144d0afbe85d0f575f1f6da9322ccfa85514a66b7e7df0abe57a6f0010000006b483045022100e8cd8d01370ae2d6135233d1e69a5ce0a426b3e8e688e385ebf5c7120cc0ccc8022004c1df4863e2d9ea9fabd67e775c9e381ed9cc667b14939a85411a79bbe7abce012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffffa16f861ec5fe30b9e3a5ee96506df458af3a8f18ba8cd10aa4e9f6eeb5f786f3010000006b48304502210086a9ff4ad4fc10758e657dbebbccf105ad82fb5465360207473a480a7078a4fb022015babdf10b064528a9c88095ebec0f5e43b1404faf06f74fab35fc815ce36e8e012103e4ce0e4309e90dd6e511687dc1303ef66d4bc4111b75ce58093b836ffb048e66feffffff5c193e3ad4d9d82be7428f9256dbcf6cfa27e52195150fb5f6ac47825f050e36010000006b48304502210091e420700815fa83b48f77eaf4eb517328453daff6f97b12f7258f5b95481ac802205d41b0cf9088273a39f4111be3353cbcb11ed536d0981f312cec1d6d435d567901210375e0cf2556cb7355383c82ffd261ac9919ddad1a702471887e7dc6de52fd1bebfeffffff6cc2de0558d43bd612d3f4f422f894fbedc35025082a4fe458dae87304812bbe010000006a47304402200bad0efa4b909d060a72e500fa4a45cf67efd6e599584f0b49347bcbfa4ef749022040574ea340a16fb32e6dc50f753663608af99bce171feedc3e4d87e6899dcf19012102e67d81c12868d7fe715a285739d2e618b412d5701c1eaf257e1ba134dec658e0feffffff47b89c7b522f18932b09d5ea42f2d0076e220c2207152b990d3e53ff583dfafa010000006b48304502210097fd92bfb495c0ee7ffefb61b54c9fd5093597adbefda34c709517d6bed143ce02206d3da447c98c641f9b87123623f6d8b91590d8954343d7cdd43c80d4c58215fb012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffff698db2652e759cdb69b902966168c7515dee8ce58dac1a7c8513c733dd7fc93a010000006a47304402205edb474a55ccb80f9bd10a241c1ba0baeebb07bdb5677abbad86eab0339c80e902202a4e5924f3bf50f3ab355b56d5ffccd6f9bc3aaba5aca6372105d93e15ce886e012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffffb6b0ce9fda0a449c7d9cd20ff909d8dac9b49ee0ff809bad3b918130923105f4000000006a4730440220522a28cc186f8703c1010d8b167d20ec2704d269fa1fe4e4e06186d1f58025640220026e7395228b15ad82428f9e065bbb4f509659f3a2429c623c5162afb50f5367012103e3f065edfeaa6fa704be50a8ca675600fa6481887cef17ac065913e2b43b4e45feffffff17db79601393ffac679ef3100d01f29a58f5f9602d4980a43417097a69cd15ed000000006a4730440220796cc097b70c213f142bd6308e26d1ebb3b1e8a179c522c4442b3546befe552802207fb7bd118adfe22c621983c69022c512ea390b247787335b32b1e9211b53ed780121030722800315783c8c90f8e6f006709606f19def22f5c2bce2356d12ddf8a0aa79feffffff0248d46800000000001976a91434391bddd81884d65fd9c7988216181b8fc963ac88acfb862a493b0100001976a9144518e50fdb31bb5951cd570342325bde15408fa388ac82888a5c065c130000000000000000000000000400008085202f890147b89c7b522f18932b09d5ea42f2d0076e220c2207152b990d3e53ff583dfafa000000006a47304402205eda7da8d3a8a2339670f180d17d21692ee4a5563c4737dd3867e68231c8e9400220608db29db779d3ff1637e10936fdfb0bdd2c779e3392406fa24e14cc6d400ba1012102a0e64d381350a14c7f85356283650e1835ac58d8b68cf58e4a5400adaa4eff0afeffffff0200ea94780d0000001976a9142a6a724ee4bb8793d0d702a0059d62648164f51588acc090ec640d0000001976a914a90b2782f35e63d9d2a0f57ac37baa4d9869d7b488ac82888a5c065c130000000000000000000000000400008085202f8902b67d626406d94b63c3a5635129d120558cef35fc12c055ca06afd7488791c6e2000000006a47304402203f8d2ade4080199f5562d6a2ed3cedfc18ba729d30677f7246f2fc549657ef2f02206a39214c45fd2403aab3f5444599c75dc498bc594452219c1db3547b9030fea0012102931b6579d839ba042b135912c49081f325dfb97cc422ff8f8f3d666943526ceefeffffffcf79748330cd7d67df0b02722b7e1dd2f977d11267ae8cfc5da8011687e10067000000006a47304402204a7185ca798fd239930a146c4d66dbe51d00c4cfe376ff9e2db85f85f4b0aa5e022038543deff2ccb5e8eb6f69489ac421f388464123a8e3c5fd982aba6c1dfce56c012102c96eb7bcc405e7d68813ccd6a1bb752e91927b468164cda7f0d9826888175671feffffff0237f5fb81020000001976a91465bda01c1c138cbd4826ab65dabfe90851cfcc3688acc089e6bc0d0000001976a914a90b2782f35e63d9d2a0f57ac37baa4d9869d7b488ac18888a5c055c130000000000000000000000000400008085202f890428827287b25f7f17862653ac6d593b2fcf6df94cc252bf7dd4804547e805f39200000000484730440220548583c50782e7541ae16c0a63527b6dd28232382575f492c6cd6de6ba0b238202206bf3070fa70cffeb49ba0d824f51599482ccfbeb047c01eab3c45b2fb9b3302f01ffffffff2974df2c133f95c7f68e663f8f07f1473012b991e883ade9691f3efbdb9936e500000000484730440220628431b307e5414be2879d327ade85b7ac71e8822bb91d31092cb5088c0187d70220458f55b406d4eb4b03d446d39de8744376707633e9f8b1b0988889c19207e34401ffffffff3eba2da31943e31871edc44442dbf9d7a6c86d6d0a48b738c0439a0b7e31575f000000004847304402204f13661e3d730d1174393b09ec87dbdf3019ac1d89974af27c0807acb180f6c10220488210b3b90cd8313a05e13e0f9939f01c0848e1bc0daae971d6e3b7782ff32b01ffffffff5cbbe431311dd8a6758183833aca8edefd989db4b687238922a4c6e79118f14e0000000049483045022100934a4906476599c7934dfa713d47378f7d39982a6cf2809c547cce2d79e36ab7022005fac2a93171208253ac8e663ce49591dc004089cf3f40cecf758d48dbb582ee01ffffffff018e079347000000001976a914d97b48cbbbdf761ac9cf8445bf398e53f8324c1c88ac91888a5c0000000000000000000000000000000400008085202f89033040de2caed0a9ed03addf7b17f761ec465dedbe1e01f148f6b306924aad057f0000000049483045022100c083168387c85661dcf5b4a34bc7849a510b4c3ce1602e58da73913ed67b4db002206d52c96bc2a9bc6d8cd62a77dfe231c88f5205670140a72a23d76600ce050ab901ffffffff5219af5e84001bf6756859c3d15120a3646b043503b4d483ec9f0f89f029def40000000049483045022100ce5b85429993f5536b354f72349fcb38c762dc8c694050474ef6b9e7ff7341e802201332a4abff4b7c3bffa7f3ea0a917cc241f9064944823516803838503426bef001ffffffff5cefb19cab0171ac52b362cf9f049f8298d3fbea66fbe30c86a623273ae5815d000000004948304502210099815a3917b18fc5b24680057f1a7ab8020b4af19d4a783e18ad0b2ab79fe7b5022030bbaee6a87ef8e229f7605d4b4f6d26a752fa3d7be1bf7e2ec492c63a977c0901ffffffff01c169c735000000001976a9147379e3d07f807bcac7909568e9818faa7ebe0f2688ac91888a5c0000000000000000000000000000000400008085202f890182d1e81ffc521ff6ec1652e013cb844e43a8abe8fee1a816645c71fedc411fc93c0000006b483045022100dc7df3a9b721253b9826e5cf4fc4b4bd8fbbf238c6725d2b9e6ced24e03dd25a0220665c11b3fa9e824f46999fd6524b204d169a24b8a1ec971bbbf35731921c141a012102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ffffffff391027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1f353edc020000001976a91489c24cc09b46d0af8b345836464d912d39b495cc88ac5b888a5c0000000000000000000000000000000400008085202f89010a8ae507412485c24c38303fabcfe181fb9983f2e8398c0d2f95480b8aa059ff640000006b483045022100e72b654886011217301c5c298b88702f2bf7dc5bfbcb58e2a16e1a48d7790f1302207cd8949ef8fcd6a629abcd8f27879536152196299d48b4b73e7a68d49931d586012102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ffffffff651027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac20c06baf090000001976a914191c5620ed43f35f33ca69cfdb842c6444bc9b6188ac5a888a5c0000000000000000000000000000000400008085202f8901b157f5a4e4989a001924d408cc69a301b57ff5316ada56819bdff40640a81332230000006b48304502210097da6895411c0885ce69bb05db23d07849335855bb9d4dcd5cb6defa76c2ffec022030de7136a62437f68e000514ebad45e292285b518b6a7038114540d5ac0818670121029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ffffffff2310270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac59f58ba1000000001976a914eb6f8d38d93ba6826ea82f797d6014e3cfd54f9d88ac5a888a5c0000000000000000000000000000000400008085202f890198ad9dccb96067cea8475c7469329193c789a905d137dd6600a000392640bafa1c0000006b483045022100b3372315c863b2c79667f431fb2f927d6922b75707d9dc33beb53acb8db43dd302204a81e16b206687702f26e57447a931f8aa2f8d6efe785179888fbf534b24fc060121025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fffffffff1d10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac6fe5010c000000001976a914ef8d08549f41a68d2dd6c49e0d9f4f9b6c5c8c7d88ac92888a5c0000000000000000000000000000000400008085202f8901731204472ad39b1f45df02816a54739b2e16a61d8ce66b03539b7720f6825f091f0000006a473044022048e13878941b664971b81fafe7fb1fdd0c72a3d8d37f39264970de91e2d74d4402205152c26e850e72f84cb4e1e357fea3d8ade026032e40fa5b7dc0e1c2f86ea4cc012103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceffffffff171027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac6d6a151f000000001976a914c159429874a1257cfc5fc06b19268c476170331588ac5a888a5c0000000000000000000000000000000400008085202f890123e6f7e523140d80fa00df19e44ccad29909b20cb73cb9f21fdd23c6a67c74581a0000006a473044022079e9f5b7ed693a2573c84c384d933cd7e5983a80786b7cbd67b54e453a4ffe1e022016d7ec400d9cb3663da929035ec7cc72fcc18d4320288d2da2cf9d31e96f7bed012103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ffffffff1d1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac10f9b905000000001976a914c05466ef14438d2b1bccdf1af5229d7a80fffe3288ac5a888a5c0000000000000000000000000000000400008085202f89019a6ab1a38d2f0d88484dec96695c42ddf3844e16a69c34aaa79a92d6cb7414a5320000006a473044022030216539df2bd8a3823b7c9f3135d2af06ade941d985ab2f7574004d5ab36e9e02203895c67b4858525086350168d6ed310c537fddfa7c9eb3243876c4d6cc97318501210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ffffffff33102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0acf3f54203000000001976a9141616d631ab421d75f08f42e72dea864777bc0c4e88ac4f888a5c0000000000000000000000000000000400008085202f890dc6dc6157ef7dfa450da29f3f2118340e9decb5f7b5e3b85f8389bfeb365b47720000000048473044022007d71854072dcdb9070cc340dc9576c6ab2fc7f798eff1088d1caf3682f92d0302202237fda7e04fd21477bcc4c75039172132331c5acb554e27f9340d57558067d201fffffffff9ada62d044142fb5f01b008c10992e6f89c2d4c6f4077fa5cbdd9428cc225fa24000000484730440220695937a62d3dbe32c3439801a692f056d3748126d4ca1b20557789134c7f3e4602205253b06cb816d24a15a6abb6222c7680184216c694f44a567834195a35bc1cdc01ffffffff0a8ae507412485c24c38303fabcfe181fb9983f2e8398c0d2f95480b8aa059ff2800000048473044022026dbb57a379df983ff11454cd80b30bfd60f671f100f802aa780c9b75d18aea102204b6f4dc521945b0ce27bafe3f2f723e74b8051909b391ca970c0b337a70eb6c201ffffffffc00e6dc13a68f70aec4d2b36a5d5cc51e0e0cb41edebf59bea9a24912b775a3a25000000494830450221009e5e576dab9f281d0512958c90ed361d644522a7246c2ed21f97337fb1f040f0022061df9d1201859a953ccad595f138141df73b218c2b3586a70db45231d0ddd48001ffffffff854381d6ad4141fe39d1c380eb67a0afef7bfbb64537b27e40d6e59910295e820a0000004847304402202b8357afdf891018967f8d03a7b790ca747c355a96fae576d2472502a6811c090220451377e6541a8a27ac3972132f8de3014da66b38c218cf8f48b7157bbf4743d001ffffffffd49df9c1da8b632451572059d201bbf6e7fd3012ed11295ca4c3cf5ac5b5df4412000000484730440220474bee676313eda7923c494843f31d204990a7e5aea229b94c0cc97c1cd8371202202c67371224e8bcb8e41f427eb27aecc90171cc3851896dc131043c6b8aa8cfc501ffffffff1decd807dfbe413e4eb2a3f82d69154dc34a445f08813331e48a7f581ac627996400000049483045022100b8691e53e3cf907fef63a0c148f364b047ff707c9318cfa78d8dea9ccd3d8a8402207d4875c62f9cdbd501612bbbbbac28e0efaee608ebc9fc65a2aaa77e97a79ae801ffffffff5a381a7bd15caa95f7aeb38feef6c6b2b25844803a280cd6b24007b446f3d57501000000484730440220029045c52424d60b95fe1044efd5c64283a7f77ebaf354c3601c3aa318c84cd602202dfca5db85d8c80c584083987207b53802c7184abddf36d8bf53f676aefb5bc201ffffffff0274127484aa76d32cc8e75bbfb290982dd8eb01b940292068c53e5f61dd2c1d070000004847304402200652191844c4a2e8ac0a476a00e33c25e9dcc47319c795261c344db4d3b9288f022074aa42ad513ec02adda1ab3c627df25e04a6ddf930caa30d50e4072d214a8bc301ffffffffce3d7c7b07a1c7382ad695fe4fadda54d080ac5636d0d7b77315755b90416e4b1e00000049483045022100a28a5b2fb3c885dc21204361bda482f324994ca30e598f0f2125a24f3cb3c56902200be1455721ebd34da73cd0bbe4df2e83360eb191327c2110baf0290bfb9d8e3901ffffffff23e6f7e523140d80fa00df19e44ccad29909b20cb73cb9f21fdd23c6a67c74581700000048473044022013d3c2bbafc32dc1111ee520e8c1493ff97ebd388f23858864430bb47258476f022015dacb6783f1a7fe498fc3aef8e251755cb590e497f3051dfbf107c8dfb76c2401ffffffffb9c5ba043aab543fb0f9ee081274f19ee90e23c24efdf9033ca54c59e68f629b8f00000049483045022100f281eae8ca027f4ec3d8b75e597d67e27384f5777a4e08a1fe4dda31e580842002203a86f906de7425acdde533c709416f3102571cccba120c765d90c4e73674bf5e01ffffffffc5d6803e163af08209e82a709f32ba56da6db0f8dedc295a8f23d88c0f25737c1d00000049483045022100eca2d721751d4594272334b53213c63cfdee3313cd4f2775286b27a1dbf4cea10220265fabdc4a80c87cf8766caa02e154f26db62d87068418023849b991ebad740801ffffffff02f0810100000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000000000004a6a48b2a323d907944adda686d6af1402d7375b555eaaa845ccea2b56191abf8db702e65b1300e73aeff574fa047e0ac85bd43cfcc0cb101acf2bb8b5044ffb81fb3d1756e7c44b4d4400000000000000000000000000000000000000000400008085202f890dbfb8379dc045ee0f6761d9210f5b487859e33f9830bbb45b8403d9f40e8b1867210000004847304402204a8751ae5f8afb0fa76a1c7c2b53c1e68c922b790206c0436e176570824010e702205c75da7c9f814b808e79e58387bf131425d12154ebb8d74f60d6f2c2707b2e0f01ffffffffe7a36df2bb0f53009ac28dac8e1eebbdb903d123abcfaa61802595c7b600eb494c000000484730440220164f385dc1f64ea646d01513362a7fb102dedce5bf12f6b05278c6d29dec4c9d02207f5c07cf00de0c12d3a684cfcaf9c977974297291be89ce93fc1435282cf3bf801ffffffff7d9af2be0064c499992029975746c10ed04916fd82ecc589ec322e1c4e50df8621000000494830450221008b2fc6045b1733bc6d2605f2100429b2c7e237f10c55cd821115b97b8a02fc12022000bd907366170c0c635f8d7407b7b4764d6efa914c4015d0037a3807b6ef4cf401fffffffff9ada62d044142fb5f01b008c10992e6f89c2d4c6f4077fa5cbdd9428cc225fa270000004847304402204bd10484bef584ca54f7692f0cbe79967aa5ab0bce39d96202c485c986c732b402203ba077cedee09dbc349bd54ce685e62ec08b662250d9501f579b1ca2f73e262b01ffffffff3bf7746ed9ebf4e685e56792c794af4d4369deca49af3e9d7bd788ce26eb41dd0600000049483045022100cb6d372822f3418c5461303a01e04fdb30fbde481a64e47483532527eb5da78c0220080489a5ab955988cd63431da38d0cd4897eeb739551af350c830205c6a7b13501ffffffff861e29cfd26fa4c4b40bdb757ab156f7dec72410a5370eff6cabfaa1678f88194900000049483045022100a358bce7afc8af7291c2eadf16b9ddd8947ba796edb0cc1dae99c39608d65b9602202eb823228f62d3ffa9d8dc681314ab04fbd7ba30fcc877bf30cdb62874199ada01ffffffff854381d6ad4141fe39d1c380eb67a0afef7bfbb64537b27e40d6e59910295e82290000004847304402202d472694aa35c1f7f92f0c46af27144ef41a48f7cc03c2adf53c662d0b7b91f802205233ab9103af9bf44d08f6c5d2e8c9c13ae2de81064a930da6c13321bc080d8501ffffffff60792d615959d6d6fa7a225bccfca1b5e4bc275692bcb382d9b74c0069c191ce1100000048473044022060342a84f5486dda839733223b45a72f75fec15e8d187f5bace69d1627ba5aa902200642327ed6cd1507b40918bb07729f40146ef0ed200c3e206774cdf931479ab801ffffffff47f9fc498e5d4743a0e1c3e00a34793cd9fd174b249e17b1f6053bcb8537d3523900000048473044022024544d695d5cbc92cbde332cf86a82c4202eaca596fcc08b3ee3c22ea96707e30220245af7aee677e004dd16ec872b756928ba10a1eb9d9f765deaeceace3bf86f6801ffffffffad15c7663ea9b3269c201840eecd2bf065e8c86cc8ee4514536446615c13556401000000484730440220651e063c284921610289e655e3d24178b697b1ca8d5113979e26c29df064fe7002205c0e4f8ca19c1f69bd99084aa5d01507764996174aff79e7bf5516c2e966714101ffffffff959f84879c93c5ac8bfdd6aa1c490493126624c5d2d8acea95745003ec2c528ff30000004847304402206ef7c9b3bfafaa80d41cc6bcca13cad13eb77a81f1038d509617a567ea97974f02202b089b0ca9d7aab0b30f9aebc35212f67a8ea41fb08a09f0a290bc18e42029c001ffffffff9a6ab1a38d2f0d88484dec96695c42ddf3844e16a69c34aaa79a92d6cb7414a51c000000484730440220120d38eea759f436a4d97648a97754665a75586d13ed1753d5613dd53796b6670220117a69a0a8806c7f98415b5c7bb9c486b558115102c969b0f1d6b3b00799bd5401ffffffff39ea5abbfff290e5e49344289c09fec063534545f0380d780a7418aefbbb832e3100000049483045022100f36c7cbc311b3b45955b477a270b7f080e53d2a14af549fdc3e75a1b744be41002202c2e093cd0c2111993a77d767524c903b980d14ae6698f7eae88977a06b1963501ffffffff02f0810100000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000000000004f6a4c4c8cd9a19be28aad3b4ab58738286d467697da698b2b9a1e6c56c7b31dd564910ba42101004f55520045e3db8b5bfbfb361ce5eb9c07dc8837022a3736daca8da8029cdec8d0fd3ea516002a00000000000000000000000000000000000000000400008085202f890d5f6fd3a7b16c402bfdb4e562f56b4522b586b7285a6739fce7df5bd64aac7c8ce900000049483045022100a055a3e8a19a7e07f3a563118f9c508d74095205808c2100f23ed984e1c1a16a02205c7922af3a971b17324bb1ebebe67003c09307490c2904201d29b8afecc0a57001ffffffff17cc0f0e5dce7f9d19d13ab5c9dd2b0c2bf6acd5f78233ec7ba51c45beeffe4c8d0000004847304402200a5da4295b4fb0b9cfec4ec83bbf8dc7369c92b03fc7e293fb5ba4385b960ea80220167d2023562f3ec5d6ed62e76ce8144fba3914fcc4249434f900518d3a68abe101ffffffffa6ab4a060539cc9db908348181224223923ee049d2edce5ec81b4ea7c1c0e32e84000000494830450221008a6a0194acab9b0e2a5f9b7840174a9ecba4e54a90969a3d29a0ef1bdcf163e2022007715f65cf8bdd5adec4be4d20b4d72aa08c21b1be672f6ad4285702bea987b801ffffffffa1c4819de039aae9f9ce219da16bec57ed9754c32ee18661bedbb74876c14e1cf000000049483045022100c3b21b9835f5d1ad2e0f61b90a7053ac2e9bca0709d7356512a2ae5789169ddf02204e0a1200827853fc528e79214cc9e208089090de507a398ea45d09d644149f7401ffffffff05525eb74c0b647f3bd86723620c808c2119ec64f1022f35a15625bea9cd23b81d000000484730440220274a0f8680d7a817ccd4a214fcf8d7f83fe76a32399c443a9399bd0b3c6d61ae022013c6382b7f86d16d5df1f004489ab33a5eda2fa578096f5767b7ccb2ceb0b59701ffffffffd49df9c1da8b632451572059d201bbf6e7fd3012ed11295ca4c3cf5ac5b5df44150000004847304402200a5b9cd8c7f2cba014702bc6352d3aec97c92b990d9ce926b6e7656476cf3c660220728e934d395681f4ef105784274b562edc898b2c495be78baf8da960b43b567001ffffffff3febc849eaec76acdd40ca8d86ef1895868a237b3bdde63a43930696fd5ea83e0900000049483045022100f88bcbf828916e07d440573b497b08261f833076de00e7d7c4be19d56c0c107402202e01126e2498df85e7ef811332b5637ccecf95c6f3d5872e79feae95a6b9486201fffffffffff8ad2ca78dec55cfcedf09974ea8dd9f17d9a309307b724973f8c5667f413f1e00000049483045022100814239ee9a3f47be09a8231df505343fedb41809f046858a70af77ad006844430220515bde1130ac00c5efe85d2e91fa03221c8fecda8d0c1476f2de2782687a156601ffffffffe502828224f6d199d638a5f56f2245e9acf7d27e50deb33b269c5be9a9bc4d330400000049483045022100a21b73b0e303bbf707e997722baf81f5a73b8d53a34f7a2144d48a89fa6d6981022020d1d5f089b140dd981ed715a1821415b169c4d68f4fd6f5d7f248d7cd0779ee01ffffffff23e6f7e523140d80fa00df19e44ccad29909b20cb73cb9f21fdd23c6a67c74580800000048473044022025da7b955b4a8853733ece9492b77ec399c8aeee4fc44f415fd06dd603195a3502204808a0c6504da98871341aaa59fc551bd28eb352018ed9b64611934f64e0e42d01ffffffff8a2fc3741df52c42e5fb5fa0514bd6a5015d4c5721b90e3427458dbf807398372200000048473044022051735e7eaf066c8124b8f962d63c9fe102d4187b1bf1acd9818a417df780703b022033c697c530bd94913548259eb5a9bef0b5eccb44c5c3f7422cb34b7401da0bd901ffffffffc7951e877f420d9cb5742f861c3104a636efde269cdef0ecf15a24e2da3d95490600000048473044022071cdf74e13583f26e84440b461bdc7e22762755db67fa7cf78cc10dd6376206a02203ed47cb73f9abec8ab64018f93bce6dc93a4f0f8f4712cb1178df89dd8b535bc01ffffffff84b034d6a035aa5f7a5e9b2ac4ae69e89161c630b1ee6be4052e03219f4899aa1300000048473044022037195e8722722ca2f272a6f3ee9a7a8449ee11cdea825537a85c0e5cef8d8a2602204e93ccd11c1dc48471a4c35139eda2696192cca27c1bd33e5bdc90846c718e5301ffffffff02f0810100000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000000000004f6a4c4c942843449b5635eee21f3e3021a5578ca066fb0baefcc25ac3165f2628ec530c425105004d475700e7654c3be48f72a937576ab72e4c4559715893c3b81bf4c5849fcb9b8e9e02fb12000000000000000000000000000000000000000000000400008085202f89011277b9f1688e4df084658dda1f483b1e0e8be78a8da3892cf3aeea5d8e9052660100000049483045022100d541d834cff2da7e22fe40b8332de9a9122f7e120fed781ab5b4ec34d26102ba02206110aa58dc4a69c815fd0a485bde8ca29572e58531ec546c70a71aebeb47fb3a01ffffffff0188130000000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000075c13000000000000000000000000
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblock", "params": ["0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"hash": "0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320",
"confirmations": 1,
"rawconfirmations": 5,
"size": 26321,
"height": 1268723,
"version": 4,
"merkleroot": "9cdd912d6aa82a5f55db4a79bb2181a74485df386c80e3936ce46d6e35f64d78",
"segid": -1,
"finalsaplingroot": "1ccce5445c492209c1d6e3e0bf21711e6f4012fddb724073dca473eb34a7d8a2",
"tx": [
"d500535236301413318ca05abc99a3136b3f72111ab06683f0e03ded15ec5663",
"d7f9b34ad3e86f48fce55dbec1f2925b8dcbd15199977fd75d224254db9ae80d",
"29939ca572cc61ddb67dbeab4e17c885213c367231cfc02419d5c9f44d2a92e0",
"7ed658dbb045195f5dd39a2e4c0e9e70c4d1088fde446f563d297612401a61b1",
"bdbc36996104f8b33bd5c82c678493bddf8d562bb5c8f5d796ace8b09b21d6a8",
"c89e4bcb285b97f3da9ffcb43bb8e300fb3a3911352f47495730c75cabe04ff0",
"9ee811357a9d4ed1d3844b426dd5fd8fcb386336d65eddae488ac8d1fc2af69b",
"89c2c61ed95901714dac57bc8720e436af0fe156bece05da1e894fd96e029f77",
"c3b308f768bcc3c748a12d8883176b4ff3e44bd5fab42b06306e281804c7c8ba",
"a8cdac6943562ac051bed5c6cd6e515498c4ccbc5389580dce2f58ff0e103ba5",
"f310e661ab39ff600ec2c98e9c0afd2f0652ce14c423fcf8d13a8e25616b0580",
"a077fab812d8a35c998e3178fa945c2575dc5010d703960f71f16989d6f858de",
"ca0672f70d5f668d806a8265fd607237ab718b66fb4c67a841fd7677ed5b208a",
"40670bb9ee51a9370d8849f58ed219aa42a5206b46281dd8639ddf8a30e22316",
"ae980edde333720483cb6db0f633e2d3825e9aa1d46a0db67faad3a56f7c8e7f",
"a8f81af1e3cf7dee220a8348f0addd33cd961ca640a79dee0eb64ead9c566c1e",
"2250c19f3ae06625644b8b3a455c323a44d2ca5746fe5b3671941e56d20be613"
],
"time": 1552582977,
"nonce": "000054c888f9f2c08f1b0112d10ab6b739fc7f0f324dd15277efc3eaa634000a",
"solution": "00bfd611d3c531f8a3e962cd46d62109685518a2ed078c0ea1ed4b555db2ed5108603aaedd3ee98ac463084a50d2080a9384a1bb718053a08a55507fce56b83694930194e91bab7260b79bfffd520e5d973c2c9e01221b74d7544383712ca1033ea2caaa499efdf59e06c3f423689c7a7b7a2f5345cbcae6f26afdb7d8300462848ffb1ae69f2f11f13d3f52ebac8aca51f6721a056d8ac5525517ca4079442fdac19ac0b5f7b66004b8448286090b4b29f390b58272157eaa733d011d14cfcaa19813b692e5057556a35dc86e0da613f46605ba7f4ec88ddec30ead8b4b5df032bef638da39092a7d39661723d0b7ea07a5d6fd422fcf423efdd1a90ad094c444481ae950dc41e02d20044555623cec5b2679873fa44ef75acf1c592ca96765f28f3b5f853219b1b140e2467aef56e5b71aca6a4a86d9c918504b2758fbcc8812b9332f7fe52309e95d455f9a7e49c300f17511590fd33befc370e5a5619602732299dad7227e21e4271f6767873a43132dc08c4d488a310c7105b2a45d4536bff1b7cb70f0d68f5e996050cc55da23bf86fb3ad10e3b9028a48a8ef2376a2c2039210409d5b85a922dbe3d7ddbd399e632435957a776c9bc0a77ad8a62d623f0f15df49e543d869d51790cadee496b36bf6368ebb568ed69cf3578913aa097f99eb86b2e2701691bba85fc7d383aede90317877cdcaa4803610fea9d42729635cc623cb7397279c426fb5cee0cab13f3a217a456cd61a34dbc5990cde5de55b0ac12e8429a2e586298f3e8313febe6e6b1f590f885432433aac18d6e7b7b99f3425720d35b30d8b234475c04f09951df512cfc947fb4237cd0279ad276f86de910c30b79da45b7e76531f4bce2e8d03dfbbf11ee5712c9c92c69a96d69b05cb18e418f4e98b3c067e5cb19de2375865b51450a79e80a4fc5a5c716b0bee64b0256542f0a6f9871c02656d90846dca9fb381519682397514f522b3045ce88744f2b5af53d51b4bac3d409139a6b588309e90bbc836ea079e4e4eed7eae7ab0f1871bd6aee35cd7637d3525153ca2d77c1eebc010a5a905e8ed9b97bb18427592c60bd52c13e7e7fa5191323a5f6b03b4dbf2074edf97087b6340ab3dcc11a56bb04c89a22e2f6f8c27123561800e55e1afae61abd2c2809ddf3fbad93e372e2d1febf6f2e9f7e7a0489069e7a927e37025b32661b9c0fc576ac2dd3db4fe79331e4a48ff54c848a45a7679fdee69899af2320a5cd338b8f15f732d353a95ecf16ed82290d073f22381bc7d81743b7ea8343ac20c25fda4f179f142f10a2a2f6f556cc12de3c728a1ae005ed954752558c1a81ff709ea10f49b80774eca5bcf681a7dc2e5101151c95f94fc80df2ecd9c334ed75195a81bc7a0bfe1af5c3f7703de3dff447f338d819d789a725dcac6c028f0a9a43cc8fd140abb0d40a630a84fbdd751c2a08c28f7fd1d376f98c0fc418f4f0929de03f3038640388abc0ee44a14d7094130e0b503a61a6229f10891ab90dc9c9cc76469c0ab30f7fca9386760676194e04a8db6d2506ecaba8e800bccbe2ddc53d46b9771307445efbf15454e35f5a30bb4cf9aedd129bacd19d05c63645c9589e73829ba5abd87e0bee0fccbb06e4214acbee7c240d1586e05a9a50f0661712e4dc9e71050b36dbc7133bfd32df2cc8ddf9356fd4701f37f32635d3a7be0a50b6d6b85597d95a948df1f91a58a70a221cdc1e880ce1a54644ec91eabd7625497f02e02b291381978ccbdd4761e3ca0128efa146a0ea4e9a13003bc1558db863c2a183460455a0560bc75c7f061449714ddc5431458483630fc3ff769e78c71901ea1e516e5fe04cd0a553f5f2403afaef2e33c31eb55d326c030d76e188676099b5b9f43f100afe25994feb",
"bits": "1d01e71c",
"difficulty": 132777470.6040096,
"chainwork": "000000000000000000000000000000000000000000000000000241daab323e77",
"anchor": "4e43e43d3569c1155cc9340f46b58425e3d86890076739f19298bc66e6a7acf2",
"blocktype": "mined",
"valuePools": [
{
"id": "sprout",
"monitored": true,
"chainValue": 84948.93692198,
"chainValueZat": 8494893692198,
"valueDelta": 0.0,
"valueDeltaZat": 0
},
{
"id": "sapling",
"monitored": true,
"chainValue": 3.07618319,
"chainValueZat": 307618319,
"valueDelta": 0.0,
"valueDeltaZat": 0
}
],
"previousblockhash": "0474f6be4f1efb132cfedc252559ef3aee166e6bb58e99160edcf029d13f8017",
"nextblockhash": "000000003331516a9b135e3273ebad53a60921e5d3132fe7d596f5903337f504"
},
"error": null,
"id": "curltest"
}
You can find the rpcuser, rpcpassword, and rpcport in the hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblock", "params": ["0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320", false] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "0400000017803fd129f0dc0e16998eb56b6e16ee3aef592525dcfe2c13fb1e4fbef67404784df6356e6de46c93e3806c38df8544a78121bb794adb555f2aa86a2d91dd9ca2d8a734eb73a4dc734072dbfd12406f1e7121bfe0e3d6c10922495c44e5cc1c41898a5c1ce7011d0a0034a6eac3ef7752d14d320f7ffc39b7b60ad112011b8fc0f2f988c8540000fd400500bfd611d3c531f8a3e962cd46d62109685518a2ed078c0ea1ed4b555db2ed5108603aaedd3ee98ac463084a50d2080a9384a1bb718053a08a55507fce56b83694930194e91bab7260b79bfffd520e5d973c2c9e01221b74d7544383712ca1033ea2caaa499efdf59e06c3f423689c7a7b7a2f5345cbcae6f26afdb7d8300462848ffb1ae69f2f11f13d3f52ebac8aca51f6721a056d8ac5525517ca4079442fdac19ac0b5f7b66004b8448286090b4b29f390b58272157eaa733d011d14cfcaa19813b692e5057556a35dc86e0da613f46605ba7f4ec88ddec30ead8b4b5df032bef638da39092a7d39661723d0b7ea07a5d6fd422fcf423efdd1a90ad094c444481ae950dc41e02d20044555623cec5b2679873fa44ef75acf1c592ca96765f28f3b5f853219b1b140e2467aef56e5b71aca6a4a86d9c918504b2758fbcc8812b9332f7fe52309e95d455f9a7e49c300f17511590fd33befc370e5a5619602732299dad7227e21e4271f6767873a43132dc08c4d488a310c7105b2a45d4536bff1b7cb70f0d68f5e996050cc55da23bf86fb3ad10e3b9028a48a8ef2376a2c2039210409d5b85a922dbe3d7ddbd399e632435957a776c9bc0a77ad8a62d623f0f15df49e543d869d51790cadee496b36bf6368ebb568ed69cf3578913aa097f99eb86b2e2701691bba85fc7d383aede90317877cdcaa4803610fea9d42729635cc623cb7397279c426fb5cee0cab13f3a217a456cd61a34dbc5990cde5de55b0ac12e8429a2e586298f3e8313febe6e6b1f590f885432433aac18d6e7b7b99f3425720d35b30d8b234475c04f09951df512cfc947fb4237cd0279ad276f86de910c30b79da45b7e76531f4bce2e8d03dfbbf11ee5712c9c92c69a96d69b05cb18e418f4e98b3c067e5cb19de2375865b51450a79e80a4fc5a5c716b0bee64b0256542f0a6f9871c02656d90846dca9fb381519682397514f522b3045ce88744f2b5af53d51b4bac3d409139a6b588309e90bbc836ea079e4e4eed7eae7ab0f1871bd6aee35cd7637d3525153ca2d77c1eebc010a5a905e8ed9b97bb18427592c60bd52c13e7e7fa5191323a5f6b03b4dbf2074edf97087b6340ab3dcc11a56bb04c89a22e2f6f8c27123561800e55e1afae61abd2c2809ddf3fbad93e372e2d1febf6f2e9f7e7a0489069e7a927e37025b32661b9c0fc576ac2dd3db4fe79331e4a48ff54c848a45a7679fdee69899af2320a5cd338b8f15f732d353a95ecf16ed82290d073f22381bc7d81743b7ea8343ac20c25fda4f179f142f10a2a2f6f556cc12de3c728a1ae005ed954752558c1a81ff709ea10f49b80774eca5bcf681a7dc2e5101151c95f94fc80df2ecd9c334ed75195a81bc7a0bfe1af5c3f7703de3dff447f338d819d789a725dcac6c028f0a9a43cc8fd140abb0d40a630a84fbdd751c2a08c28f7fd1d376f98c0fc418f4f0929de03f3038640388abc0ee44a14d7094130e0b503a61a6229f10891ab90dc9c9cc76469c0ab30f7fca9386760676194e04a8db6d2506ecaba8e800bccbe2ddc53d46b9771307445efbf15454e35f5a30bb4cf9aedd129bacd19d05c63645c9589e73829ba5abd87e0bee0fccbb06e4214acbee7c240d1586e05a9a50f0661712e4dc9e71050b36dbc7133bfd32df2cc8ddf9356fd4701f37f32635d3a7be0a50b6d6b85597d95a948df1f91a58a70a221cdc1e880ce1a54644ec91eabd7625497f02e02b291381978ccbdd4761e3ca0128efa146a0ea4e9a13003bc1558db863c2a183460455a0560bc75c7f061449714ddc5431458483630fc3ff769e78c71901ea1e516e5fe04cd0a553f5f2403afaef2e33c31eb55d326c030d76e188676099b5b9f43f100afe25994feb110400008085202f89010000000000000000000000000000000000000000000000000000000000000000ffffffff0603f35b130101ffffffff01a45eec110000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0acdf888a5c0000000000000000000000000000000400008085202f8911cf79748330cd7d67df0b02722b7e1dd2f977d11267ae8cfc5da8011687e10067010000006a47304402201a1dc90dd58cbdc3ab8bf08344b1a49621f79699ef1a877bdece6c9d2f23c02d0220093f14e9c961eda05508b444cf1623ddbaccf7fbe8d9b9df55807bd9ddd096f20121026d3e36b748a4a28168e160ad017fcbb153e9bf29f92b716e320b5838e0df13f5feffffffa8f62f92d378e6d6b2c6d53b7093cd6177894903ae9d62c5afe1ac91399fead5010000006b483045022100af219cf9a0407f4445823c40e9eb4889bd06270935133fda7e4377ef35d6672402202bc58076e6358f95f128937be1fbcf7ab3222859b1661bd8e04ee7e228d86334012103deffacc2b2abe0b64a513bd09aeceae93422274c4f6dd46874ee0d166966e889feffffff3b246ca457247f8a1d3b1f45d27d047422e63bceff050e897081cba9c8a9d518010000006a4730440220676bd83477be45fcf88b6701ef054e857797dc5efbc73fd07322cb70cd21fd700220592d07feb5efca70b0e0b998d85f63a67e6842fdb2ad66e198610042f1bf1641012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447fefffffff9ff833e59b0576305debd4973b24e4170806dffac00aa2c390b89d041ea1628000000006a4730440220432793afe567b2a1df9302687669f7c2ab08878651cf233e2a68bbd8c6bc2e5c0220371e911ba8b599853bd2db05ed90e2efac2b82280deb1595c6d8fb778e270477012103b71f3d1a526b141bb44997c9ed67e0136d64f72e949ce33d7a4226a3365b8082feffffff7b7f64b975d918854bab3c3d3d755d7fe1c61badcb503abc9c8b58c6bbf9ac23010000006b483045022100e595a0dc487a35ec4d2e5b95d61f418cd52b2dece19b8145ec0cc8b28fd3d8d102202057ce268a3bcba958baa1e754d55c6f9f4df8d3ea53b27fe22891ae45c01ff6012103e03208fa3305d0cb6f9e54776ce9fa5cbd33e38c4c11b956cd1fa3ce3d90362efeffffffb67d626406d94b63c3a5635129d120558cef35fc12c055ca06afd7488791c6e2010000006a47304402207929a4e3f9d7ef687f06e69b35a74b1b4841900192aca5f045e70a6b0c9ba983022064b9cb5e58c93c649edf270caa8e433de646a84bb597dd1cb4d81dee5d21de7b012103e27acf9d3dcf716acc3006be22e114562eb56c357f9f17200ab6672f3b4fd10cfeffffffe2cf2e582587e66181bf3c6139d56e8b3ea77af43895f72fab3d57a91d0e9758010000006b483045022100b3c48ccb4dd70ecba2b84e92d5477bc25ec5ec5df4666c2c6028d6979bd8c1c5022063773c0fc45efca514ae79f035871d45337243522456af63b272f7fc1bffa323012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffff6e619be941c4d51abf1280f60022dfae75705850cffd95598655dfd17eb2ae2e010000006b483045022100b068f52abc1ce15a18231cd3f6a833debabace07bc58f69afa89e743a97effae02204ab80dfa53ad7a1269cb66daccf860e9b3d92856ba61f07d26c18f33b158d8d7012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffff253288df87fe5d7f351246c9bf66766150039fefd238921b77d8407828c2187e000000006a473044022057eb9bdc2761b70045161a25371c3a94ff7edb7e188fa166341da3f305da873f02203a754e919b5a5bfd09f8cd77dde71eb3d5330c06484137a03d50f5300d51c680012102ac0637e418fa018d46c8636d9c1dc1ae7fee59b24b8be73a2e17fdf8d5dc7dadfeffffff49424c834144d0afbe85d0f575f1f6da9322ccfa85514a66b7e7df0abe57a6f0010000006b483045022100e8cd8d01370ae2d6135233d1e69a5ce0a426b3e8e688e385ebf5c7120cc0ccc8022004c1df4863e2d9ea9fabd67e775c9e381ed9cc667b14939a85411a79bbe7abce012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffffa16f861ec5fe30b9e3a5ee96506df458af3a8f18ba8cd10aa4e9f6eeb5f786f3010000006b48304502210086a9ff4ad4fc10758e657dbebbccf105ad82fb5465360207473a480a7078a4fb022015babdf10b064528a9c88095ebec0f5e43b1404faf06f74fab35fc815ce36e8e012103e4ce0e4309e90dd6e511687dc1303ef66d4bc4111b75ce58093b836ffb048e66feffffff5c193e3ad4d9d82be7428f9256dbcf6cfa27e52195150fb5f6ac47825f050e36010000006b48304502210091e420700815fa83b48f77eaf4eb517328453daff6f97b12f7258f5b95481ac802205d41b0cf9088273a39f4111be3353cbcb11ed536d0981f312cec1d6d435d567901210375e0cf2556cb7355383c82ffd261ac9919ddad1a702471887e7dc6de52fd1bebfeffffff6cc2de0558d43bd612d3f4f422f894fbedc35025082a4fe458dae87304812bbe010000006a47304402200bad0efa4b909d060a72e500fa4a45cf67efd6e599584f0b49347bcbfa4ef749022040574ea340a16fb32e6dc50f753663608af99bce171feedc3e4d87e6899dcf19012102e67d81c12868d7fe715a285739d2e618b412d5701c1eaf257e1ba134dec658e0feffffff47b89c7b522f18932b09d5ea42f2d0076e220c2207152b990d3e53ff583dfafa010000006b48304502210097fd92bfb495c0ee7ffefb61b54c9fd5093597adbefda34c709517d6bed143ce02206d3da447c98c641f9b87123623f6d8b91590d8954343d7cdd43c80d4c58215fb012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffff698db2652e759cdb69b902966168c7515dee8ce58dac1a7c8513c733dd7fc93a010000006a47304402205edb474a55ccb80f9bd10a241c1ba0baeebb07bdb5677abbad86eab0339c80e902202a4e5924f3bf50f3ab355b56d5ffccd6f9bc3aaba5aca6372105d93e15ce886e012102f654024b115a687033a8f430494fefc6a6cc2a6095b62b5c7cd155d31c2d4447feffffffb6b0ce9fda0a449c7d9cd20ff909d8dac9b49ee0ff809bad3b918130923105f4000000006a4730440220522a28cc186f8703c1010d8b167d20ec2704d269fa1fe4e4e06186d1f58025640220026e7395228b15ad82428f9e065bbb4f509659f3a2429c623c5162afb50f5367012103e3f065edfeaa6fa704be50a8ca675600fa6481887cef17ac065913e2b43b4e45feffffff17db79601393ffac679ef3100d01f29a58f5f9602d4980a43417097a69cd15ed000000006a4730440220796cc097b70c213f142bd6308e26d1ebb3b1e8a179c522c4442b3546befe552802207fb7bd118adfe22c621983c69022c512ea390b247787335b32b1e9211b53ed780121030722800315783c8c90f8e6f006709606f19def22f5c2bce2356d12ddf8a0aa79feffffff0248d46800000000001976a91434391bddd81884d65fd9c7988216181b8fc963ac88acfb862a493b0100001976a9144518e50fdb31bb5951cd570342325bde15408fa388ac82888a5c065c130000000000000000000000000400008085202f890147b89c7b522f18932b09d5ea42f2d0076e220c2207152b990d3e53ff583dfafa000000006a47304402205eda7da8d3a8a2339670f180d17d21692ee4a5563c4737dd3867e68231c8e9400220608db29db779d3ff1637e10936fdfb0bdd2c779e3392406fa24e14cc6d400ba1012102a0e64d381350a14c7f85356283650e1835ac58d8b68cf58e4a5400adaa4eff0afeffffff0200ea94780d0000001976a9142a6a724ee4bb8793d0d702a0059d62648164f51588acc090ec640d0000001976a914a90b2782f35e63d9d2a0f57ac37baa4d9869d7b488ac82888a5c065c130000000000000000000000000400008085202f8902b67d626406d94b63c3a5635129d120558cef35fc12c055ca06afd7488791c6e2000000006a47304402203f8d2ade4080199f5562d6a2ed3cedfc18ba729d30677f7246f2fc549657ef2f02206a39214c45fd2403aab3f5444599c75dc498bc594452219c1db3547b9030fea0012102931b6579d839ba042b135912c49081f325dfb97cc422ff8f8f3d666943526ceefeffffffcf79748330cd7d67df0b02722b7e1dd2f977d11267ae8cfc5da8011687e10067000000006a47304402204a7185ca798fd239930a146c4d66dbe51d00c4cfe376ff9e2db85f85f4b0aa5e022038543deff2ccb5e8eb6f69489ac421f388464123a8e3c5fd982aba6c1dfce56c012102c96eb7bcc405e7d68813ccd6a1bb752e91927b468164cda7f0d9826888175671feffffff0237f5fb81020000001976a91465bda01c1c138cbd4826ab65dabfe90851cfcc3688acc089e6bc0d0000001976a914a90b2782f35e63d9d2a0f57ac37baa4d9869d7b488ac18888a5c055c130000000000000000000000000400008085202f890428827287b25f7f17862653ac6d593b2fcf6df94cc252bf7dd4804547e805f39200000000484730440220548583c50782e7541ae16c0a63527b6dd28232382575f492c6cd6de6ba0b238202206bf3070fa70cffeb49ba0d824f51599482ccfbeb047c01eab3c45b2fb9b3302f01ffffffff2974df2c133f95c7f68e663f8f07f1473012b991e883ade9691f3efbdb9936e500000000484730440220628431b307e5414be2879d327ade85b7ac71e8822bb91d31092cb5088c0187d70220458f55b406d4eb4b03d446d39de8744376707633e9f8b1b0988889c19207e34401ffffffff3eba2da31943e31871edc44442dbf9d7a6c86d6d0a48b738c0439a0b7e31575f000000004847304402204f13661e3d730d1174393b09ec87dbdf3019ac1d89974af27c0807acb180f6c10220488210b3b90cd8313a05e13e0f9939f01c0848e1bc0daae971d6e3b7782ff32b01ffffffff5cbbe431311dd8a6758183833aca8edefd989db4b687238922a4c6e79118f14e0000000049483045022100934a4906476599c7934dfa713d47378f7d39982a6cf2809c547cce2d79e36ab7022005fac2a93171208253ac8e663ce49591dc004089cf3f40cecf758d48dbb582ee01ffffffff018e079347000000001976a914d97b48cbbbdf761ac9cf8445bf398e53f8324c1c88ac91888a5c0000000000000000000000000000000400008085202f89033040de2caed0a9ed03addf7b17f761ec465dedbe1e01f148f6b306924aad057f0000000049483045022100c083168387c85661dcf5b4a34bc7849a510b4c3ce1602e58da73913ed67b4db002206d52c96bc2a9bc6d8cd62a77dfe231c88f5205670140a72a23d76600ce050ab901ffffffff5219af5e84001bf6756859c3d15120a3646b043503b4d483ec9f0f89f029def40000000049483045022100ce5b85429993f5536b354f72349fcb38c762dc8c694050474ef6b9e7ff7341e802201332a4abff4b7c3bffa7f3ea0a917cc241f9064944823516803838503426bef001ffffffff5cefb19cab0171ac52b362cf9f049f8298d3fbea66fbe30c86a623273ae5815d000000004948304502210099815a3917b18fc5b24680057f1a7ab8020b4af19d4a783e18ad0b2ab79fe7b5022030bbaee6a87ef8e229f7605d4b4f6d26a752fa3d7be1bf7e2ec492c63a977c0901ffffffff01c169c735000000001976a9147379e3d07f807bcac7909568e9818faa7ebe0f2688ac91888a5c0000000000000000000000000000000400008085202f890182d1e81ffc521ff6ec1652e013cb844e43a8abe8fee1a816645c71fedc411fc93c0000006b483045022100dc7df3a9b721253b9826e5cf4fc4b4bd8fbbf238c6725d2b9e6ced24e03dd25a0220665c11b3fa9e824f46999fd6524b204d169a24b8a1ec971bbbf35731921c141a012102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ffffffff391027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1027000000000000232102698c6f1c9e43b66e82dbb163e8df0e5a2f62f3a7a882ca387d82f86e0b3fa988ac1f353edc020000001976a91489c24cc09b46d0af8b345836464d912d39b495cc88ac5b888a5c0000000000000000000000000000000400008085202f89010a8ae507412485c24c38303fabcfe181fb9983f2e8398c0d2f95480b8aa059ff640000006b483045022100e72b654886011217301c5c298b88702f2bf7dc5bfbcb58e2a16e1a48d7790f1302207cd8949ef8fcd6a629abcd8f27879536152196299d48b4b73e7a68d49931d586012102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ffffffff651027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac1027000000000000232102c4f89a5b382750836cb787880d30e23502265054e1c327a5bfce67116d757ce8ac20c06baf090000001976a914191c5620ed43f35f33ca69cfdb842c6444bc9b6188ac5a888a5c0000000000000000000000000000000400008085202f8901b157f5a4e4989a001924d408cc69a301b57ff5316ada56819bdff40640a81332230000006b48304502210097da6895411c0885ce69bb05db23d07849335855bb9d4dcd5cb6defa76c2ffec022030de7136a62437f68e000514ebad45e292285b518b6a7038114540d5ac0818670121029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ffffffff2310270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac10270000000000002321029d19215440d8cb9cc6c6b7a4744ae7fb9fb18d986e371b06aeb34b64845f9325ac59f58ba1000000001976a914eb6f8d38d93ba6826ea82f797d6014e3cfd54f9d88ac5a888a5c0000000000000000000000000000000400008085202f890198ad9dccb96067cea8475c7469329193c789a905d137dd6600a000392640bafa1c0000006b483045022100b3372315c863b2c79667f431fb2f927d6922b75707d9dc33beb53acb8db43dd302204a81e16b206687702f26e57447a931f8aa2f8d6efe785179888fbf534b24fc060121025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fffffffff1d10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac10270000000000002321025830ce81bd1301fb67d5872344efa7a9ff99ae85fe1234f18c085db9072b740fac6fe5010c000000001976a914ef8d08549f41a68d2dd6c49e0d9f4f9b6c5c8c7d88ac92888a5c0000000000000000000000000000000400008085202f8901731204472ad39b1f45df02816a54739b2e16a61d8ce66b03539b7720f6825f091f0000006a473044022048e13878941b664971b81fafe7fb1fdd0c72a3d8d37f39264970de91e2d74d4402205152c26e850e72f84cb4e1e357fea3d8ade026032e40fa5b7dc0e1c2f86ea4cc012103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceffffffff171027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac1027000000000000232103b59ad322b17cb94080dc8e6dc10a0a865de6d47c16fb5b1a0b5f77f9507f3cceac6d6a151f000000001976a914c159429874a1257cfc5fc06b19268c476170331588ac5a888a5c0000000000000000000000000000000400008085202f890123e6f7e523140d80fa00df19e44ccad29909b20cb73cb9f21fdd23c6a67c74581a0000006a473044022079e9f5b7ed693a2573c84c384d933cd7e5983a80786b7cbd67b54e453a4ffe1e022016d7ec400d9cb3663da929035ec7cc72fcc18d4320288d2da2cf9d31e96f7bed012103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ffffffff1d1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac1027000000000000232103396ac453b3f23e20f30d4793c5b8ab6ded6993242df4f09fd91eb9a4f8aede84ac10f9b905000000001976a914c05466ef14438d2b1bccdf1af5229d7a80fffe3288ac5a888a5c0000000000000000000000000000000400008085202f89019a6ab1a38d2f0d88484dec96695c42ddf3844e16a69c34aaa79a92d6cb7414a5320000006a473044022030216539df2bd8a3823b7c9f3135d2af06ade941d985ab2f7574004d5ab36e9e02203895c67b4858525086350168d6ed310c537fddfa7c9eb3243876c4d6cc97318501210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ffffffff33102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0ac102700000000000023210348d9b1fc6acf81290405580f525ee49b4749ed4637b51a28b18caa26543b20f0acf3f54203000000001976a9141616d631ab421d75f08f42e72dea864777bc0c4e88ac4f888a5c0000000000000000000000000000000400008085202f890dc6dc6157ef7dfa450da29f3f2118340e9decb5f7b5e3b85f8389bfeb365b47720000000048473044022007d71854072dcdb9070cc340dc9576c6ab2fc7f798eff1088d1caf3682f92d0302202237fda7e04fd21477bcc4c75039172132331c5acb554e27f9340d57558067d201fffffffff9ada62d044142fb5f01b008c10992e6f89c2d4c6f4077fa5cbdd9428cc225fa24000000484730440220695937a62d3dbe32c3439801a692f056d3748126d4ca1b20557789134c7f3e4602205253b06cb816d24a15a6abb6222c7680184216c694f44a567834195a35bc1cdc01ffffffff0a8ae507412485c24c38303fabcfe181fb9983f2e8398c0d2f95480b8aa059ff2800000048473044022026dbb57a379df983ff11454cd80b30bfd60f671f100f802aa780c9b75d18aea102204b6f4dc521945b0ce27bafe3f2f723e74b8051909b391ca970c0b337a70eb6c201ffffffffc00e6dc13a68f70aec4d2b36a5d5cc51e0e0cb41edebf59bea9a24912b775a3a25000000494830450221009e5e576dab9f281d0512958c90ed361d644522a7246c2ed21f97337fb1f040f0022061df9d1201859a953ccad595f138141df73b218c2b3586a70db45231d0ddd48001ffffffff854381d6ad4141fe39d1c380eb67a0afef7bfbb64537b27e40d6e59910295e820a0000004847304402202b8357afdf891018967f8d03a7b790ca747c355a96fae576d2472502a6811c090220451377e6541a8a27ac3972132f8de3014da66b38c218cf8f48b7157bbf4743d001ffffffffd49df9c1da8b632451572059d201bbf6e7fd3012ed11295ca4c3cf5ac5b5df4412000000484730440220474bee676313eda7923c494843f31d204990a7e5aea229b94c0cc97c1cd8371202202c67371224e8bcb8e41f427eb27aecc90171cc3851896dc131043c6b8aa8cfc501ffffffff1decd807dfbe413e4eb2a3f82d69154dc34a445f08813331e48a7f581ac627996400000049483045022100b8691e53e3cf907fef63a0c148f364b047ff707c9318cfa78d8dea9ccd3d8a8402207d4875c62f9cdbd501612bbbbbac28e0efaee608ebc9fc65a2aaa77e97a79ae801ffffffff5a381a7bd15caa95f7aeb38feef6c6b2b25844803a280cd6b24007b446f3d57501000000484730440220029045c52424d60b95fe1044efd5c64283a7f77ebaf354c3601c3aa318c84cd602202dfca5db85d8c80c584083987207b53802c7184abddf36d8bf53f676aefb5bc201ffffffff0274127484aa76d32cc8e75bbfb290982dd8eb01b940292068c53e5f61dd2c1d070000004847304402200652191844c4a2e8ac0a476a00e33c25e9dcc47319c795261c344db4d3b9288f022074aa42ad513ec02adda1ab3c627df25e04a6ddf930caa30d50e4072d214a8bc301ffffffffce3d7c7b07a1c7382ad695fe4fadda54d080ac5636d0d7b77315755b90416e4b1e00000049483045022100a28a5b2fb3c885dc21204361bda482f324994ca30e598f0f2125a24f3cb3c56902200be1455721ebd34da73cd0bbe4df2e83360eb191327c2110baf0290bfb9d8e3901ffffffff23e6f7e523140d80fa00df19e44ccad29909b20cb73cb9f21fdd23c6a67c74581700000048473044022013d3c2bbafc32dc1111ee520e8c1493ff97ebd388f23858864430bb47258476f022015dacb6783f1a7fe498fc3aef8e251755cb590e497f3051dfbf107c8dfb76c2401ffffffffb9c5ba043aab543fb0f9ee081274f19ee90e23c24efdf9033ca54c59e68f629b8f00000049483045022100f281eae8ca027f4ec3d8b75e597d67e27384f5777a4e08a1fe4dda31e580842002203a86f906de7425acdde533c709416f3102571cccba120c765d90c4e73674bf5e01ffffffffc5d6803e163af08209e82a709f32ba56da6db0f8dedc295a8f23d88c0f25737c1d00000049483045022100eca2d721751d4594272334b53213c63cfdee3313cd4f2775286b27a1dbf4cea10220265fabdc4a80c87cf8766caa02e154f26db62d87068418023849b991ebad740801ffffffff02f0810100000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000000000004a6a48b2a323d907944adda686d6af1402d7375b555eaaa845ccea2b56191abf8db702e65b1300e73aeff574fa047e0ac85bd43cfcc0cb101acf2bb8b5044ffb81fb3d1756e7c44b4d4400000000000000000000000000000000000000000400008085202f890dbfb8379dc045ee0f6761d9210f5b487859e33f9830bbb45b8403d9f40e8b1867210000004847304402204a8751ae5f8afb0fa76a1c7c2b53c1e68c922b790206c0436e176570824010e702205c75da7c9f814b808e79e58387bf131425d12154ebb8d74f60d6f2c2707b2e0f01ffffffffe7a36df2bb0f53009ac28dac8e1eebbdb903d123abcfaa61802595c7b600eb494c000000484730440220164f385dc1f64ea646d01513362a7fb102dedce5bf12f6b05278c6d29dec4c9d02207f5c07cf00de0c12d3a684cfcaf9c977974297291be89ce93fc1435282cf3bf801ffffffff7d9af2be0064c499992029975746c10ed04916fd82ecc589ec322e1c4e50df8621000000494830450221008b2fc6045b1733bc6d2605f2100429b2c7e237f10c55cd821115b97b8a02fc12022000bd907366170c0c635f8d7407b7b4764d6efa914c4015d0037a3807b6ef4cf401fffffffff9ada62d044142fb5f01b008c10992e6f89c2d4c6f4077fa5cbdd9428cc225fa270000004847304402204bd10484bef584ca54f7692f0cbe79967aa5ab0bce39d96202c485c986c732b402203ba077cedee09dbc349bd54ce685e62ec08b662250d9501f579b1ca2f73e262b01ffffffff3bf7746ed9ebf4e685e56792c794af4d4369deca49af3e9d7bd788ce26eb41dd0600000049483045022100cb6d372822f3418c5461303a01e04fdb30fbde481a64e47483532527eb5da78c0220080489a5ab955988cd63431da38d0cd4897eeb739551af350c830205c6a7b13501ffffffff861e29cfd26fa4c4b40bdb757ab156f7dec72410a5370eff6cabfaa1678f88194900000049483045022100a358bce7afc8af7291c2eadf16b9ddd8947ba796edb0cc1dae99c39608d65b9602202eb823228f62d3ffa9d8dc681314ab04fbd7ba30fcc877bf30cdb62874199ada01ffffffff854381d6ad4141fe39d1c380eb67a0afef7bfbb64537b27e40d6e59910295e82290000004847304402202d472694aa35c1f7f92f0c46af27144ef41a48f7cc03c2adf53c662d0b7b91f802205233ab9103af9bf44d08f6c5d2e8c9c13ae2de81064a930da6c13321bc080d8501ffffffff60792d615959d6d6fa7a225bccfca1b5e4bc275692bcb382d9b74c0069c191ce1100000048473044022060342a84f5486dda839733223b45a72f75fec15e8d187f5bace69d1627ba5aa902200642327ed6cd1507b40918bb07729f40146ef0ed200c3e206774cdf931479ab801ffffffff47f9fc498e5d4743a0e1c3e00a34793cd9fd174b249e17b1f6053bcb8537d3523900000048473044022024544d695d5cbc92cbde332cf86a82c4202eaca596fcc08b3ee3c22ea96707e30220245af7aee677e004dd16ec872b756928ba10a1eb9d9f765deaeceace3bf86f6801ffffffffad15c7663ea9b3269c201840eecd2bf065e8c86cc8ee4514536446615c13556401000000484730440220651e063c284921610289e655e3d24178b697b1ca8d5113979e26c29df064fe7002205c0e4f8ca19c1f69bd99084aa5d01507764996174aff79e7bf5516c2e966714101ffffffff959f84879c93c5ac8bfdd6aa1c490493126624c5d2d8acea95745003ec2c528ff30000004847304402206ef7c9b3bfafaa80d41cc6bcca13cad13eb77a81f1038d509617a567ea97974f02202b089b0ca9d7aab0b30f9aebc35212f67a8ea41fb08a09f0a290bc18e42029c001ffffffff9a6ab1a38d2f0d88484dec96695c42ddf3844e16a69c34aaa79a92d6cb7414a51c000000484730440220120d38eea759f436a4d97648a97754665a75586d13ed1753d5613dd53796b6670220117a69a0a8806c7f98415b5c7bb9c486b558115102c969b0f1d6b3b00799bd5401ffffffff39ea5abbfff290e5e49344289c09fec063534545f0380d780a7418aefbbb832e3100000049483045022100f36c7cbc311b3b45955b477a270b7f080e53d2a14af549fdc3e75a1b744be41002202c2e093cd0c2111993a77d767524c903b980d14ae6698f7eae88977a06b1963501ffffffff02f0810100000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000000000004f6a4c4c8cd9a19be28aad3b4ab58738286d467697da698b2b9a1e6c56c7b31dd564910ba42101004f55520045e3db8b5bfbfb361ce5eb9c07dc8837022a3736daca8da8029cdec8d0fd3ea516002a00000000000000000000000000000000000000000400008085202f890d5f6fd3a7b16c402bfdb4e562f56b4522b586b7285a6739fce7df5bd64aac7c8ce900000049483045022100a055a3e8a19a7e07f3a563118f9c508d74095205808c2100f23ed984e1c1a16a02205c7922af3a971b17324bb1ebebe67003c09307490c2904201d29b8afecc0a57001ffffffff17cc0f0e5dce7f9d19d13ab5c9dd2b0c2bf6acd5f78233ec7ba51c45beeffe4c8d0000004847304402200a5da4295b4fb0b9cfec4ec83bbf8dc7369c92b03fc7e293fb5ba4385b960ea80220167d2023562f3ec5d6ed62e76ce8144fba3914fcc4249434f900518d3a68abe101ffffffffa6ab4a060539cc9db908348181224223923ee049d2edce5ec81b4ea7c1c0e32e84000000494830450221008a6a0194acab9b0e2a5f9b7840174a9ecba4e54a90969a3d29a0ef1bdcf163e2022007715f65cf8bdd5adec4be4d20b4d72aa08c21b1be672f6ad4285702bea987b801ffffffffa1c4819de039aae9f9ce219da16bec57ed9754c32ee18661bedbb74876c14e1cf000000049483045022100c3b21b9835f5d1ad2e0f61b90a7053ac2e9bca0709d7356512a2ae5789169ddf02204e0a1200827853fc528e79214cc9e208089090de507a398ea45d09d644149f7401ffffffff05525eb74c0b647f3bd86723620c808c2119ec64f1022f35a15625bea9cd23b81d000000484730440220274a0f8680d7a817ccd4a214fcf8d7f83fe76a32399c443a9399bd0b3c6d61ae022013c6382b7f86d16d5df1f004489ab33a5eda2fa578096f5767b7ccb2ceb0b59701ffffffffd49df9c1da8b632451572059d201bbf6e7fd3012ed11295ca4c3cf5ac5b5df44150000004847304402200a5b9cd8c7f2cba014702bc6352d3aec97c92b990d9ce926b6e7656476cf3c660220728e934d395681f4ef105784274b562edc898b2c495be78baf8da960b43b567001ffffffff3febc849eaec76acdd40ca8d86ef1895868a237b3bdde63a43930696fd5ea83e0900000049483045022100f88bcbf828916e07d440573b497b08261f833076de00e7d7c4be19d56c0c107402202e01126e2498df85e7ef811332b5637ccecf95c6f3d5872e79feae95a6b9486201fffffffffff8ad2ca78dec55cfcedf09974ea8dd9f17d9a309307b724973f8c5667f413f1e00000049483045022100814239ee9a3f47be09a8231df505343fedb41809f046858a70af77ad006844430220515bde1130ac00c5efe85d2e91fa03221c8fecda8d0c1476f2de2782687a156601ffffffffe502828224f6d199d638a5f56f2245e9acf7d27e50deb33b269c5be9a9bc4d330400000049483045022100a21b73b0e303bbf707e997722baf81f5a73b8d53a34f7a2144d48a89fa6d6981022020d1d5f089b140dd981ed715a1821415b169c4d68f4fd6f5d7f248d7cd0779ee01ffffffff23e6f7e523140d80fa00df19e44ccad29909b20cb73cb9f21fdd23c6a67c74580800000048473044022025da7b955b4a8853733ece9492b77ec399c8aeee4fc44f415fd06dd603195a3502204808a0c6504da98871341aaa59fc551bd28eb352018ed9b64611934f64e0e42d01ffffffff8a2fc3741df52c42e5fb5fa0514bd6a5015d4c5721b90e3427458dbf807398372200000048473044022051735e7eaf066c8124b8f962d63c9fe102d4187b1bf1acd9818a417df780703b022033c697c530bd94913548259eb5a9bef0b5eccb44c5c3f7422cb34b7401da0bd901ffffffffc7951e877f420d9cb5742f861c3104a636efde269cdef0ecf15a24e2da3d95490600000048473044022071cdf74e13583f26e84440b461bdc7e22762755db67fa7cf78cc10dd6376206a02203ed47cb73f9abec8ab64018f93bce6dc93a4f0f8f4712cb1178df89dd8b535bc01ffffffff84b034d6a035aa5f7a5e9b2ac4ae69e89161c630b1ee6be4052e03219f4899aa1300000048473044022037195e8722722ca2f272a6f3ee9a7a8449ee11cdea825537a85c0e5cef8d8a2602204e93ccd11c1dc48471a4c35139eda2696192cca27c1bd33e5bdc90846c718e5301ffffffff02f0810100000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000000000004f6a4c4c942843449b5635eee21f3e3021a5578ca066fb0baefcc25ac3165f2628ec530c425105004d475700e7654c3be48f72a937576ab72e4c4559715893c3b81bf4c5849fcb9b8e9e02fb12000000000000000000000000000000000000000000000400008085202f89011277b9f1688e4df084658dda1f483b1e0e8be78a8da3892cf3aeea5d8e9052660100000049483045022100d541d834cff2da7e22fe40b8332de9a9122f7e120fed781ab5b4ec34d26102ba02206110aa58dc4a69c815fd0a485bde8ca29572e58531ec546c70a71aebeb47fb3a01ffffffff0188130000000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000075c13000000000000000000000000",
"error": null,
"id": "curltest"
}
Command:
./hush-cli getblock 120
Response:
{
"hash": "028d455c8b61d4ee5959e2d3d6e6b60d4d779e0ba8b0e1c093e9443ba5c42179",
"confirmations": 1268619,
"rawconfirmations": 1268619,
"size": 1587,
"height": 120,
"version": 4,
"merkleroot": "d390975e989394e046ef0000f47367fa59e96cb9a4ddfa930a3a378689060149",
"segid": -1,
"finalsaplingroot": "0000000000000000000000000000000000000000000000000000000000000000",
"tx": ["d390975e989394e046ef0000f47367fa59e96cb9a4ddfa930a3a378689060149"],
"time": 1473825108,
"nonce": "000078d1eba5ea592b0c1a6728f86df449ee17bd64cb14cd246481d18a830003",
"solution": "003f9ef9cf78d687c8e4c56f98d2afc5670c34ce0a0d4c72c2115bd70dddf803535f9cf11343a47b4ec30642354007ab856b9942c21e4f47ee8cb9c6f268160eccea157f0a0f3678cfe107569d998d0d959c0c52047220911125802f7d2b9221ab33fd708b429db55319e6750b65076d9e7ca522a221bfff98b6278938742616a7b2e89fb3e9ce7d645e29c1de7d4425d6a339512072b53f9d430f1dca491f0cf00c8ab5f116dc2204a97ff65553a41d43fef0f4b6f0621c6fbe580db218bf2fb241749995b5e2129e1ef5fa40b293cf47570724bf202055255988f47526d95121b1e6e7b9364814af7b4eaaf4e0dfc11ea4a253341b96e70bb92d2305d96e1c5c08bafcb13d20c3e7b9f8d3298979fff112c400f0c3d2a335118da25c42d035f898c8b728f034c414f8281b09f1d0b6754894e9f72285273b1711363c4583079344910dbd9705cde8534efbb838de7f008321268318e68b08bd524952b0d42cbedb3a50e03d5b4d560f370f95d7a43657ca56a83b73bdbd22a9124018f23f154319cc1d0520a150edf6748539074a2164be459b2077afca94638f0f45d29f6f42fcf05301d9581f944a137dfd5f80eac5df99f6b4129f23d50c65fc2231791525dc1523c8b64c6df55cdfdfdbc70b8b811c2b0e9e554ba113f238edcb392bf1cdc9e918a4df7e1ce21a138e9501b6eac8ab889793fda38d02a99bf74f6281e1d55be1ff729fc215529f94e7892b7686e1829bdb0fd432b780b4e28a6e5b973e1b04137f75b0ff1786f1562402adfad8476981a3b23a1b3251c54ca9538d5b4927e8bdc2c72d62fd705eab750a810d6c2b928477849f252afff9330e3d34be4ffe5d79fea92f19d10d3627862754df6449c71e5ffe69276731c9e00ab91ab747a5c0b2ba19a9be4872becb3510b248de5bbd5fc1b5735b65d2b5f36c18dcf30300b50f20b6c3e79114505044ccca604f9f6fde0d460bfc220a4c450d93e5dde0eaebc747c1b3f3349d5705e80d9afdc200d6981a131c3fc80fd19ae3d44bbc305f7fd5c5d03011f1a489460d55ccbaef7d9fb8dc0148ab399b4e38b1ef19c2083766563dcd8af8e8f42629cd72d6d956b374a1e59800f75435e362d2b1e95ba834ad2434b26be7f33670d3e7e54da5d8766ad86d13d61536a587e99414ea34847599cf9d92fe92dc079a920c7492067115a874eb98e5f36632a2d30ba5114625cd04497f5d413dc2add3cdd8fa4eb2f641b210f38541380e3d00a175462a9fe107d2dad559d9e317490d9ad489d7ff3e2b32f9fe3d98015b86fc45aa07d5e0614f8bd123b4e0960690c8e846eafa3b34f016a9418752c9942edb83e1783df05fb653cadfae0c18e604702d5f328b4ccf01d17c22e7f2f0ddfb3ef9395267dbc3170f8366a7144310e015ea6d763d769c01c40fc516d97614f18504c59ced8a9fa749ffeacd02cd47072a0564c5748a30dca894c1904f53ab606a0789d1809adabb01f6fe486e9e6d20f3d5f63f91c02428fc74a6e608a345bf2543ed7646c9af6a7709ba0aa38af74f0a12a33febc30ea39ecde221613d62b60c701974dae2dcbfb81d10ec39229e23c2c2fe6d970f10ddfb16049ee86c36f1546af704808b596566cc1b85dc6e40df0a29488be1feac3d13c1140998d6c303600b7fe207c62fd7ca13431e2be09e3c01fe6bb803a1e84e8160c31539d6588ffc6e6ece38a9d890611f3f0108ef60333da3d37224d2732b366aac75603125203fedc5e1d5ad1918e30dbd59e8ae516cbbf9e30e5fcbf314db2263a0598d3a35f5aa4f732bdf01cf313424422cede953ec45a7945f563b6f2294fa5960185f5f626056d141194775b00e5051ab7c0fbccaff3607825491da72f73dd3c3da17ae65d52053fb6a6d",
"bits": "200f0f0f",
"difficulty": 1,
"chainwork": "0000000000000000000000000000000000000000000000000000000000000809",
"anchor": "59d2cde5e65c1414c32ba54f0fe4bdb3d67618125286e6a191317917c812c6d7",
"blocktype": "mined",
"valuePools": [
{
"id": "sprout",
"monitored": true,
"chainValue": 0.0,
"chainValueZat": 0,
"valueDelta": 0.0,
"valueDeltaZat": 0
},
{
"id": "sapling",
"monitored": true,
"chainValue": 0.0,
"chainValueZat": 0,
"valueDelta": 0.0,
"valueDeltaZat": 0
}
],
"previousblockhash": "009ccd7da3a2c6212b56147b5491773bde944bb6169160d88dc5879a9e005087",
"nextblockhash": "06ea921ade69ca13f8a2220ed6633f35ed6afd94368c404e7cbdee374c7c11d6"
}
Command:
./hush-cli getblock 120 false
Response:
040000008750009e9a87c58dd8609116b64b94de3b7791547b14562b21c6a2a37dcd9c004901068986373a0a93fadda4b96ce959fa6773f40000ef46e09493985e9790d3000000000000000000000000000000000000000000000000000000000000000054c9d8570f0f0f200300838ad1816424cd14cb64bd17ee49f46df828671a0c2b59eaa5ebd1780000fd4005003f9ef9cf78d687c8e4c56f98d2afc5670c34ce0a0d4c72c2115bd70dddf803535f9cf11343a47b4ec30642354007ab856b9942c21e4f47ee8cb9c6f268160eccea157f0a0f3678cfe107569d998d0d959c0c52047220911125802f7d2b9221ab33fd708b429db55319e6750b65076d9e7ca522a221bfff98b6278938742616a7b2e89fb3e9ce7d645e29c1de7d4425d6a339512072b53f9d430f1dca491f0cf00c8ab5f116dc2204a97ff65553a41d43fef0f4b6f0621c6fbe580db218bf2fb241749995b5e2129e1ef5fa40b293cf47570724bf202055255988f47526d95121b1e6e7b9364814af7b4eaaf4e0dfc11ea4a253341b96e70bb92d2305d96e1c5c08bafcb13d20c3e7b9f8d3298979fff112c400f0c3d2a335118da25c42d035f898c8b728f034c414f8281b09f1d0b6754894e9f72285273b1711363c4583079344910dbd9705cde8534efbb838de7f008321268318e68b08bd524952b0d42cbedb3a50e03d5b4d560f370f95d7a43657ca56a83b73bdbd22a9124018f23f154319cc1d0520a150edf6748539074a2164be459b2077afca94638f0f45d29f6f42fcf05301d9581f944a137dfd5f80eac5df99f6b4129f23d50c65fc2231791525dc1523c8b64c6df55cdfdfdbc70b8b811c2b0e9e554ba113f238edcb392bf1cdc9e918a4df7e1ce21a138e9501b6eac8ab889793fda38d02a99bf74f6281e1d55be1ff729fc215529f94e7892b7686e1829bdb0fd432b780b4e28a6e5b973e1b04137f75b0ff1786f1562402adfad8476981a3b23a1b3251c54ca9538d5b4927e8bdc2c72d62fd705eab750a810d6c2b928477849f252afff9330e3d34be4ffe5d79fea92f19d10d3627862754df6449c71e5ffe69276731c9e00ab91ab747a5c0b2ba19a9be4872becb3510b248de5bbd5fc1b5735b65d2b5f36c18dcf30300b50f20b6c3e79114505044ccca604f9f6fde0d460bfc220a4c450d93e5dde0eaebc747c1b3f3349d5705e80d9afdc200d6981a131c3fc80fd19ae3d44bbc305f7fd5c5d03011f1a489460d55ccbaef7d9fb8dc0148ab399b4e38b1ef19c2083766563dcd8af8e8f42629cd72d6d956b374a1e59800f75435e362d2b1e95ba834ad2434b26be7f33670d3e7e54da5d8766ad86d13d61536a587e99414ea34847599cf9d92fe92dc079a920c7492067115a874eb98e5f36632a2d30ba5114625cd04497f5d413dc2add3cdd8fa4eb2f641b210f38541380e3d00a175462a9fe107d2dad559d9e317490d9ad489d7ff3e2b32f9fe3d98015b86fc45aa07d5e0614f8bd123b4e0960690c8e846eafa3b34f016a9418752c9942edb83e1783df05fb653cadfae0c18e604702d5f328b4ccf01d17c22e7f2f0ddfb3ef9395267dbc3170f8366a7144310e015ea6d763d769c01c40fc516d97614f18504c59ced8a9fa749ffeacd02cd47072a0564c5748a30dca894c1904f53ab606a0789d1809adabb01f6fe486e9e6d20f3d5f63f91c02428fc74a6e608a345bf2543ed7646c9af6a7709ba0aa38af74f0a12a33febc30ea39ecde221613d62b60c701974dae2dcbfb81d10ec39229e23c2c2fe6d970f10ddfb16049ee86c36f1546af704808b596566cc1b85dc6e40df0a29488be1feac3d13c1140998d6c303600b7fe207c62fd7ca13431e2be09e3c01fe6bb803a1e84e8160c31539d6588ffc6e6ece38a9d890611f3f0108ef60333da3d37224d2732b366aac75603125203fedc5e1d5ad1918e30dbd59e8ae516cbbf9e30e5fcbf314db2263a0598d3a35f5aa4f732bdf01cf313424422cede953ec45a7945f563b6f2294fa5960185f5f626056d141194775b00e5051ab7c0fbccaff3607825491da72f73dd3c3da17ae65d52053fb6a6d0101000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0401780101ffffffff0100a3e11100000000232103e0e548e1c42e3a1b26a414d33c8862e10799557d3758b981c921c776054deb53ac00000000
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblock", "params": ["120"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"hash": "028d455c8b61d4ee5959e2d3d6e6b60d4d779e0ba8b0e1c093e9443ba5c42179",
"confirmations": 1268622,
"rawconfirmations": 1268622,
"size": 1587,
"height": 120,
"version": 4,
"merkleroot": "d390975e989394e046ef0000f47367fa59e96cb9a4ddfa930a3a378689060149",
"segid": -1,
"finalsaplingroot": "0000000000000000000000000000000000000000000000000000000000000000",
"tx": ["d390975e989394e046ef0000f47367fa59e96cb9a4ddfa930a3a378689060149"],
"time": 1473825108,
"nonce": "000078d1eba5ea592b0c1a6728f86df449ee17bd64cb14cd246481d18a830003",
"solution": "003f9ef9cf78d687c8e4c56f98d2afc5670c34ce0a0d4c72c2115bd70dddf803535f9cf11343a47b4ec30642354007ab856b9942c21e4f47ee8cb9c6f268160eccea157f0a0f3678cfe107569d998d0d959c0c52047220911125802f7d2b9221ab33fd708b429db55319e6750b65076d9e7ca522a221bfff98b6278938742616a7b2e89fb3e9ce7d645e29c1de7d4425d6a339512072b53f9d430f1dca491f0cf00c8ab5f116dc2204a97ff65553a41d43fef0f4b6f0621c6fbe580db218bf2fb241749995b5e2129e1ef5fa40b293cf47570724bf202055255988f47526d95121b1e6e7b9364814af7b4eaaf4e0dfc11ea4a253341b96e70bb92d2305d96e1c5c08bafcb13d20c3e7b9f8d3298979fff112c400f0c3d2a335118da25c42d035f898c8b728f034c414f8281b09f1d0b6754894e9f72285273b1711363c4583079344910dbd9705cde8534efbb838de7f008321268318e68b08bd524952b0d42cbedb3a50e03d5b4d560f370f95d7a43657ca56a83b73bdbd22a9124018f23f154319cc1d0520a150edf6748539074a2164be459b2077afca94638f0f45d29f6f42fcf05301d9581f944a137dfd5f80eac5df99f6b4129f23d50c65fc2231791525dc1523c8b64c6df55cdfdfdbc70b8b811c2b0e9e554ba113f238edcb392bf1cdc9e918a4df7e1ce21a138e9501b6eac8ab889793fda38d02a99bf74f6281e1d55be1ff729fc215529f94e7892b7686e1829bdb0fd432b780b4e28a6e5b973e1b04137f75b0ff1786f1562402adfad8476981a3b23a1b3251c54ca9538d5b4927e8bdc2c72d62fd705eab750a810d6c2b928477849f252afff9330e3d34be4ffe5d79fea92f19d10d3627862754df6449c71e5ffe69276731c9e00ab91ab747a5c0b2ba19a9be4872becb3510b248de5bbd5fc1b5735b65d2b5f36c18dcf30300b50f20b6c3e79114505044ccca604f9f6fde0d460bfc220a4c450d93e5dde0eaebc747c1b3f3349d5705e80d9afdc200d6981a131c3fc80fd19ae3d44bbc305f7fd5c5d03011f1a489460d55ccbaef7d9fb8dc0148ab399b4e38b1ef19c2083766563dcd8af8e8f42629cd72d6d956b374a1e59800f75435e362d2b1e95ba834ad2434b26be7f33670d3e7e54da5d8766ad86d13d61536a587e99414ea34847599cf9d92fe92dc079a920c7492067115a874eb98e5f36632a2d30ba5114625cd04497f5d413dc2add3cdd8fa4eb2f641b210f38541380e3d00a175462a9fe107d2dad559d9e317490d9ad489d7ff3e2b32f9fe3d98015b86fc45aa07d5e0614f8bd123b4e0960690c8e846eafa3b34f016a9418752c9942edb83e1783df05fb653cadfae0c18e604702d5f328b4ccf01d17c22e7f2f0ddfb3ef9395267dbc3170f8366a7144310e015ea6d763d769c01c40fc516d97614f18504c59ced8a9fa749ffeacd02cd47072a0564c5748a30dca894c1904f53ab606a0789d1809adabb01f6fe486e9e6d20f3d5f63f91c02428fc74a6e608a345bf2543ed7646c9af6a7709ba0aa38af74f0a12a33febc30ea39ecde221613d62b60c701974dae2dcbfb81d10ec39229e23c2c2fe6d970f10ddfb16049ee86c36f1546af704808b596566cc1b85dc6e40df0a29488be1feac3d13c1140998d6c303600b7fe207c62fd7ca13431e2be09e3c01fe6bb803a1e84e8160c31539d6588ffc6e6ece38a9d890611f3f0108ef60333da3d37224d2732b366aac75603125203fedc5e1d5ad1918e30dbd59e8ae516cbbf9e30e5fcbf314db2263a0598d3a35f5aa4f732bdf01cf313424422cede953ec45a7945f563b6f2294fa5960185f5f626056d141194775b00e5051ab7c0fbccaff3607825491da72f73dd3c3da17ae65d52053fb6a6d",
"bits": "200f0f0f",
"difficulty": 1,
"chainwork": "0000000000000000000000000000000000000000000000000000000000000809",
"anchor": "59d2cde5e65c1414c32ba54f0fe4bdb3d67618125286e6a191317917c812c6d7",
"blocktype": "mined",
"valuePools": [
{
"id": "sprout",
"monitored": true,
"chainValue": 0.0,
"chainValueZat": 0,
"valueDelta": 0.0,
"valueDeltaZat": 0
},
{
"id": "sapling",
"monitored": true,
"chainValue": 0.0,
"chainValueZat": 0,
"valueDelta": 0.0,
"valueDeltaZat": 0
}
],
"previousblockhash": "009ccd7da3a2c6212b56147b5491773bde944bb6169160d88dc5879a9e005087",
"nextblockhash": "06ea921ade69ca13f8a2220ed6633f35ed6afd94368c404e7cbdee374c7c11d6"
},
"error": null,
"id": "curltest"
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblock", "params": ["120", false] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "04000000285e37c2190d03bdc2395fcd05226bc25de50adf3f46363bc579e050efbfd1013163caf3ad654ee90412d51e6d77b559ae912397ae89df7c6d4fe1f7fbce81470000000000000000000000000000000000000000000000000000000000000000f2ce925b080f0f200b00ea624b040b9c73b7d68ecdf8caf81c513f9aa8679a3172b52b82c55400002403fc1abba5f415b1c422942835d46c7ba3e94665964da4c31e236c6cf9b3dfe6ffb65db10101000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0401780101ffffffff011027000000000000232103c0259e1a166e53f6ccf094ce37c0843d4a013622603bc301b4eb0f89c7cce823acf1ce925b",
"error": null,
"id": "curltest"
}getblockchaininfo
The getblockchaininfo method returns a json object containing state information about blockchain processing.
::: tip
When the chain tip is at the last block before a network upgrade activation, the consensus.chaintip value is not equal to the consensus.nextblock value.
:::
The getblockchaininfo method now returns a new size_on_disk key, which is the size of the blockchain, on disk, in bytes.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “chain” | (string) | the current network name, as defined in BIP70 (main, test, regtest) |
| “blocks” | (numeric) | the current number of blocks processed in the server |
| “headers” | (numeric) | the current number of headers we have validated |
| “bestblockhash” | (string) | the hash of the currently best block |
| “difficulty” | (numeric) | the current difficulty |
| “verificationprogress” | (numeric) | an estimate of verification progress [0…1] |
| “chainwork” | (string) | the total amount of work in the active chain, in hexadecimal |
| “pruned” | (bool) | whether the current state is in pruning mode; if true, the blockchain will not keep all transaction and block information, to preserve disk space |
| “size_on_disk” | (numeric) | the size of the blockchain on disk, measured in bytes |
| “commitments” | (numeric) | the current number of note commitments in the commitment tree |
| “softforks”: { … } | (array) | the status of softforks in progress |
| “id” | (string) | the name of the softfork |
| “version” | (numeric) | the block version |
| “enforce”: { … } | (object) | the progress toward enforcing the softfork rules for blocks of the new version |
| “status” | (boolean) | true if threshold reached |
| “found” | (numeric) | the number of blocks with the new version found |
| “required” | (numeric) | the number of blocks required to trigger |
| “window” | (numeric) | the maximum size of the examined window of recent blocks |
| “reject”: { … } | (object) | the progress toward rejecting pre-softfork blocks (same fields as “enforce”) |
| “upgrades”: | (object) | the status of network upgrades |
| “xxxxxxxxx_string”: | (string) | the branch ID of the upgrade |
| “name” | (string) | the name of upgrade |
| “activationheight” | (numeric) | the block height of activation |
| “status” | (string) | the status of the upgrade |
| “info” | (string) | additional information about the upgrade |
| “consensus”: { … } | (object) | branch IDs of the current and upcoming consensus rules |
| “chaintip” | (string) | branch ID used to validate the current chain tip |
| “nextblock” | (string) | branch ID under which the next block will be validated |
./hush-cli getblockchaininfo
Response:
{
"chain": "regtest",
"blocks": 398,
"headers": 398,
"bestblockhash": "0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084",
"difficulty": 1.000023305960651,
"verificationprogress": 1,
"chainwork": "0000000000000000000000000000000000000000000000000000000000001a7f",
"pruned": false,
"size_on_disk": 5058467629,
"commitments": 0,
"valuePools": [
{
"id": "sprout",
"monitored": true,
"chainValue": 0.0,
"chainValueZat": 0
}
],
"softforks": [
{
"id": "bip34",
"version": 2,
"enforce": {
"status": false,
"found": 399,
"required": 750,
"window": 1000
},
"reject": {
"status": false,
"found": 399,
"required": 950,
"window": 1000
}
}
],
"upgrades": {},
"consensus": {
"chaintip": "00000000",
"nextblock": "00000000"
}
}
You can find the rpcuser, rpcpassword, and rpcport in hush.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"chain": "regtest",
"blocks": 398,
"headers": 398,
"bestblockhash": "0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084",
"difficulty": 1.000023305960651,
"verificationprogress": 1,
"chainwork": "0000000000000000000000000000000000000000000000000000000000001a7f",
"pruned": false,
"size_on_disk": 5058467629,
"commitments": 0,
"valuePools": [
{
"id": "sprout",
"monitored": true,
"chainValue": 0,
"chainValueZat": 0
}
],
"softforks": [
{
"id": "bip34",
"version": 2,
"enforce": {
"status": false,
"found": 399,
"required": 750,
"window": 1000
},
"reject": {
"status": false,
"found": 399,
"required": 950,
"window": 1000
}
}
],
"upgrades": {},
"consensus": {
"chaintip": "00000000",
"nextblock": "00000000"
}
},
"error": null,
"id": "curltest"
}getblockcount
The getblockcount method returns the number of blocks in the best valid block chain.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| data | (numeric) | the current block count |
./hush-cli getblockcount
Response:
398
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockcount", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": 398,
"error": null,
"id": "curltest"
}getblockhash index
The getblockhash method returns the hash of the indicated block index, according to the best blockchain at the time provided.
| Name | Type | Description |
|---|---|---|
| index | (numeric, required) | the block index |
| Name | Type | Description |
|---|---|---|
| “hash” | (string) | the block hash |
./hush-cli getblockhash 100
Response:
08674c7a6ab6c40000d45e2094f2cafc6575bfcfdd1ce90fa0060fa573803024
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockhash", "params": [1000] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "08674c7a6ab6c40000d45e2094f2cafc6575bfcfdd1ce90fa0060fa573803024",
"error": null,
"id": "curltest"
}getblockhashes high low ‘{“noOrphans”: bool, “logicalTimes”: bool}’
The getblockhashes method returns an array of hashes of blocks within the timestamp range provided.
The method requires timestampindex to be enabled.
| Name | Type | Description |
|---|---|---|
| high | (numeric, required) | the newer block timestamp |
| low | (numeric, required) | the older block timestamp |
| options | (string, required) | a json object |
| “noOrphans” | (boolean) | a value of true implies that the method will only include blocks on the main chain |
| “logicalTimes” | (boolean) | a value of true implies that the method will only include logical timestamps with hashes |
| Name | Type | Description |
|---|---|---|
| “hash” | (string) | the block hash |
| “blockhash” | (string) | the block hash |
| “logicalts” | (numeric) | the logical timestamp |
./hush-cli getblockhashes 1531614698 1531614498
Response:
[
"01c555caa581783c94af1ec4fdd1237a37829fc8ccf9fd956f3df462495a8629",
"0debf03ff8fe2c09ccb7e8b3770121d71ef8c7fce267a04f9301cc50f594f9ac",
"01c92378d9fa66eb83d0bfcf601678792e0351f9b51483db1084347dabd78432"
]
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockhashes", "params": [1531614698, 1531614498] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
"01c555caa581783c94af1ec4fdd1237a37829fc8ccf9fd956f3df462495a8629",
"0debf03ff8fe2c09ccb7e8b3770121d71ef8c7fce267a04f9301cc50f594f9ac",
"01c92378d9fa66eb83d0bfcf601678792e0351f9b51483db1084347dabd78432"
],
"error": null,
"id": "curltest"
}
Command:
./hush-cli getblockhashes 1531614698 1531614498 '{"noOrphans":false, "logicalTimes":true}'
Response:
[
{
"blockhash": "01c555caa581783c94af1ec4fdd1237a37829fc8ccf9fd956f3df462495a8629",
"logicalts": 1531614555
},
{
"blockhash": "0debf03ff8fe2c09ccb7e8b3770121d71ef8c7fce267a04f9301cc50f594f9ac",
"logicalts": 1531614615
},
{
"blockhash": "01c92378d9fa66eb83d0bfcf601678792e0351f9b51483db1084347dabd78432",
"logicalts": 1531614692
}
]getblockheader “hash” ( verbose )
The getblockheader method returns information about the indicated block.
The verbose input is optional. If verbose is false, the method returns a string that is serialized, hex-encoded data for the indicated blockheader. If verbose is true, the method returns a json object with information about the indicated blockheader.
| Name | Type | Description |
|---|---|---|
| “hash” | (string, required) | the block hash |
| verbose | (boolean, optional, default=true) | true returns a json object, false returns hex-encoded data |
true)| Name | Type | Description |
|---|---|---|
| “hash” | (string) | the block hash (same as provided) |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations (number of blocks on top of this block); if the block is not on the main chain, a value of -1 is returned |
| “height” | (numeric) | the block height or index |
| “version” | (numeric) | the block version |
| “merkleroot” | (string) | the merkle root |
| “time” | (numeric) | the block time in seconds since epoch (Jan 1 1970 GMT) |
| “nonce” | (numeric) | the nonce |
| “bits” | (string) | the bits |
| “difficulty” | (numeric) | the difficulty |
| “previousblockhash” | (string) | the hash of the previous block |
| “nextblockhash” | (string) | the hash of the next block |
false)| Name | Type | Description |
|---|---|---|
| “data” | (string) | a string that is serialized hex-encoded data for the indicated block |
./hush-cli getblockheader "0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320"
Response:
{
"hash": "0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320",
"confirmations": 1,
"rawconfirmations": 5,
"height": 1268723,
"version": 4,
"merkleroot": "9cdd912d6aa82a5f55db4a79bb2181a74485df386c80e3936ce46d6e35f64d78",
"finalsaplingroot": "1ccce5445c492209c1d6e3e0bf21711e6f4012fddb724073dca473eb34a7d8a2",
"time": 1552582977,
"nonce": "000054c888f9f2c08f1b0112d10ab6b739fc7f0f324dd15277efc3eaa634000a",
"solution": "00bfd611d3c531f8a3e962cd46d62109685518a2ed078c0ea1ed4b555db2ed5108603aaedd3ee98ac463084a50d2080a9384a1bb718053a08a55507fce56b83694930194e91bab7260b79bfffd520e5d973c2c9e01221b74d7544383712ca1033ea2caaa499efdf59e06c3f423689c7a7b7a2f5345cbcae6f26afdb7d8300462848ffb1ae69f2f11f13d3f52ebac8aca51f6721a056d8ac5525517ca4079442fdac19ac0b5f7b66004b8448286090b4b29f390b58272157eaa733d011d14cfcaa19813b692e5057556a35dc86e0da613f46605ba7f4ec88ddec30ead8b4b5df032bef638da39092a7d39661723d0b7ea07a5d6fd422fcf423efdd1a90ad094c444481ae950dc41e02d20044555623cec5b2679873fa44ef75acf1c592ca96765f28f3b5f853219b1b140e2467aef56e5b71aca6a4a86d9c918504b2758fbcc8812b9332f7fe52309e95d455f9a7e49c300f17511590fd33befc370e5a5619602732299dad7227e21e4271f6767873a43132dc08c4d488a310c7105b2a45d4536bff1b7cb70f0d68f5e996050cc55da23bf86fb3ad10e3b9028a48a8ef2376a2c2039210409d5b85a922dbe3d7ddbd399e632435957a776c9bc0a77ad8a62d623f0f15df49e543d869d51790cadee496b36bf6368ebb568ed69cf3578913aa097f99eb86b2e2701691bba85fc7d383aede90317877cdcaa4803610fea9d42729635cc623cb7397279c426fb5cee0cab13f3a217a456cd61a34dbc5990cde5de55b0ac12e8429a2e586298f3e8313febe6e6b1f590f885432433aac18d6e7b7b99f3425720d35b30d8b234475c04f09951df512cfc947fb4237cd0279ad276f86de910c30b79da45b7e76531f4bce2e8d03dfbbf11ee5712c9c92c69a96d69b05cb18e418f4e98b3c067e5cb19de2375865b51450a79e80a4fc5a5c716b0bee64b0256542f0a6f9871c02656d90846dca9fb381519682397514f522b3045ce88744f2b5af53d51b4bac3d409139a6b588309e90bbc836ea079e4e4eed7eae7ab0f1871bd6aee35cd7637d3525153ca2d77c1eebc010a5a905e8ed9b97bb18427592c60bd52c13e7e7fa5191323a5f6b03b4dbf2074edf97087b6340ab3dcc11a56bb04c89a22e2f6f8c27123561800e55e1afae61abd2c2809ddf3fbad93e372e2d1febf6f2e9f7e7a0489069e7a927e37025b32661b9c0fc576ac2dd3db4fe79331e4a48ff54c848a45a7679fdee69899af2320a5cd338b8f15f732d353a95ecf16ed82290d073f22381bc7d81743b7ea8343ac20c25fda4f179f142f10a2a2f6f556cc12de3c728a1ae005ed954752558c1a81ff709ea10f49b80774eca5bcf681a7dc2e5101151c95f94fc80df2ecd9c334ed75195a81bc7a0bfe1af5c3f7703de3dff447f338d819d789a725dcac6c028f0a9a43cc8fd140abb0d40a630a84fbdd751c2a08c28f7fd1d376f98c0fc418f4f0929de03f3038640388abc0ee44a14d7094130e0b503a61a6229f10891ab90dc9c9cc76469c0ab30f7fca9386760676194e04a8db6d2506ecaba8e800bccbe2ddc53d46b9771307445efbf15454e35f5a30bb4cf9aedd129bacd19d05c63645c9589e73829ba5abd87e0bee0fccbb06e4214acbee7c240d1586e05a9a50f0661712e4dc9e71050b36dbc7133bfd32df2cc8ddf9356fd4701f37f32635d3a7be0a50b6d6b85597d95a948df1f91a58a70a221cdc1e880ce1a54644ec91eabd7625497f02e02b291381978ccbdd4761e3ca0128efa146a0ea4e9a13003bc1558db863c2a183460455a0560bc75c7f061449714ddc5431458483630fc3ff769e78c71901ea1e516e5fe04cd0a553f5f2403afaef2e33c31eb55d326c030d76e188676099b5b9f43f100afe25994feb",
"bits": "1d01e71c",
"difficulty": 132777470.6040096,
"chainwork": "000000000000000000000000000000000000000000000000000241daab323e77",
"segid": -1,
"previousblockhash": "0474f6be4f1efb132cfedc252559ef3aee166e6bb58e99160edcf029d13f8017",
"nextblockhash": "000000003331516a9b135e3273ebad53a60921e5d3132fe7d596f5903337f504"
}
Command:
./hush-cli getblockheader "0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320" false
Response:
0400000017803fd129f0dc0e16998eb56b6e16ee3aef592525dcfe2c13fb1e4fbef67404784df6356e6de46c93e3806c38df8544a78121bb794adb555f2aa86a2d91dd9ca2d8a734eb73a4dc734072dbfd12406f1e7121bfe0e3d6c10922495c44e5cc1c41898a5c1ce7011d0a0034a6eac3ef7752d14d320f7ffc39b7b60ad112011b8fc0f2f988c8540000fd400500bfd611d3c531f8a3e962cd46d62109685518a2ed078c0ea1ed4b555db2ed5108603aaedd3ee98ac463084a50d2080a9384a1bb718053a08a55507fce56b83694930194e91bab7260b79bfffd520e5d973c2c9e01221b74d7544383712ca1033ea2caaa499efdf59e06c3f423689c7a7b7a2f5345cbcae6f26afdb7d8300462848ffb1ae69f2f11f13d3f52ebac8aca51f6721a056d8ac5525517ca4079442fdac19ac0b5f7b66004b8448286090b4b29f390b58272157eaa733d011d14cfcaa19813b692e5057556a35dc86e0da613f46605ba7f4ec88ddec30ead8b4b5df032bef638da39092a7d39661723d0b7ea07a5d6fd422fcf423efdd1a90ad094c444481ae950dc41e02d20044555623cec5b2679873fa44ef75acf1c592ca96765f28f3b5f853219b1b140e2467aef56e5b71aca6a4a86d9c918504b2758fbcc8812b9332f7fe52309e95d455f9a7e49c300f17511590fd33befc370e5a5619602732299dad7227e21e4271f6767873a43132dc08c4d488a310c7105b2a45d4536bff1b7cb70f0d68f5e996050cc55da23bf86fb3ad10e3b9028a48a8ef2376a2c2039210409d5b85a922dbe3d7ddbd399e632435957a776c9bc0a77ad8a62d623f0f15df49e543d869d51790cadee496b36bf6368ebb568ed69cf3578913aa097f99eb86b2e2701691bba85fc7d383aede90317877cdcaa4803610fea9d42729635cc623cb7397279c426fb5cee0cab13f3a217a456cd61a34dbc5990cde5de55b0ac12e8429a2e586298f3e8313febe6e6b1f590f885432433aac18d6e7b7b99f3425720d35b30d8b234475c04f09951df512cfc947fb4237cd0279ad276f86de910c30b79da45b7e76531f4bce2e8d03dfbbf11ee5712c9c92c69a96d69b05cb18e418f4e98b3c067e5cb19de2375865b51450a79e80a4fc5a5c716b0bee64b0256542f0a6f9871c02656d90846dca9fb381519682397514f522b3045ce88744f2b5af53d51b4bac3d409139a6b588309e90bbc836ea079e4e4eed7eae7ab0f1871bd6aee35cd7637d3525153ca2d77c1eebc010a5a905e8ed9b97bb18427592c60bd52c13e7e7fa5191323a5f6b03b4dbf2074edf97087b6340ab3dcc11a56bb04c89a22e2f6f8c27123561800e55e1afae61abd2c2809ddf3fbad93e372e2d1febf6f2e9f7e7a0489069e7a927e37025b32661b9c0fc576ac2dd3db4fe79331e4a48ff54c848a45a7679fdee69899af2320a5cd338b8f15f732d353a95ecf16ed82290d073f22381bc7d81743b7ea8343ac20c25fda4f179f142f10a2a2f6f556cc12de3c728a1ae005ed954752558c1a81ff709ea10f49b80774eca5bcf681a7dc2e5101151c95f94fc80df2ecd9c334ed75195a81bc7a0bfe1af5c3f7703de3dff447f338d819d789a725dcac6c028f0a9a43cc8fd140abb0d40a630a84fbdd751c2a08c28f7fd1d376f98c0fc418f4f0929de03f3038640388abc0ee44a14d7094130e0b503a61a6229f10891ab90dc9c9cc76469c0ab30f7fca9386760676194e04a8db6d2506ecaba8e800bccbe2ddc53d46b9771307445efbf15454e35f5a30bb4cf9aedd129bacd19d05c63645c9589e73829ba5abd87e0bee0fccbb06e4214acbee7c240d1586e05a9a50f0661712e4dc9e71050b36dbc7133bfd32df2cc8ddf9356fd4701f37f32635d3a7be0a50b6d6b85597d95a948df1f91a58a70a221cdc1e880ce1a54644ec91eabd7625497f02e02b291381978ccbdd4761e3ca0128efa146a0ea4e9a13003bc1558db863c2a183460455a0560bc75c7f061449714ddc5431458483630fc3ff769e78c71901ea1e516e5fe04cd0a553f5f2403afaef2e33c31eb55d326c030d76e188676099b5b9f43f100afe25994feb
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockheader", "params": ["0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"hash": "0d060c88dd55c48a0e1ae663ca400d2edba709c8484ef84a727cabfbb950c320",
"confirmations": 1,
"rawconfirmations": 12,
"height": 1268723,
"version": 4,
"merkleroot": "9cdd912d6aa82a5f55db4a79bb2181a74485df386c80e3936ce46d6e35f64d78",
"finalsaplingroot": "1ccce5445c492209c1d6e3e0bf21711e6f4012fddb724073dca473eb34a7d8a2",
"time": 1552582977,
"nonce": "000054c888f9f2c08f1b0112d10ab6b739fc7f0f324dd15277efc3eaa634000a",
"solution": "00bfd611d3c531f8a3e962cd46d62109685518a2ed078c0ea1ed4b555db2ed5108603aaedd3ee98ac463084a50d2080a9384a1bb718053a08a55507fce56b83694930194e91bab7260b79bfffd520e5d973c2c9e01221b74d7544383712ca1033ea2caaa499efdf59e06c3f423689c7a7b7a2f5345cbcae6f26afdb7d8300462848ffb1ae69f2f11f13d3f52ebac8aca51f6721a056d8ac5525517ca4079442fdac19ac0b5f7b66004b8448286090b4b29f390b58272157eaa733d011d14cfcaa19813b692e5057556a35dc86e0da613f46605ba7f4ec88ddec30ead8b4b5df032bef638da39092a7d39661723d0b7ea07a5d6fd422fcf423efdd1a90ad094c444481ae950dc41e02d20044555623cec5b2679873fa44ef75acf1c592ca96765f28f3b5f853219b1b140e2467aef56e5b71aca6a4a86d9c918504b2758fbcc8812b9332f7fe52309e95d455f9a7e49c300f17511590fd33befc370e5a5619602732299dad7227e21e4271f6767873a43132dc08c4d488a310c7105b2a45d4536bff1b7cb70f0d68f5e996050cc55da23bf86fb3ad10e3b9028a48a8ef2376a2c2039210409d5b85a922dbe3d7ddbd399e632435957a776c9bc0a77ad8a62d623f0f15df49e543d869d51790cadee496b36bf6368ebb568ed69cf3578913aa097f99eb86b2e2701691bba85fc7d383aede90317877cdcaa4803610fea9d42729635cc623cb7397279c426fb5cee0cab13f3a217a456cd61a34dbc5990cde5de55b0ac12e8429a2e586298f3e8313febe6e6b1f590f885432433aac18d6e7b7b99f3425720d35b30d8b234475c04f09951df512cfc947fb4237cd0279ad276f86de910c30b79da45b7e76531f4bce2e8d03dfbbf11ee5712c9c92c69a96d69b05cb18e418f4e98b3c067e5cb19de2375865b51450a79e80a4fc5a5c716b0bee64b0256542f0a6f9871c02656d90846dca9fb381519682397514f522b3045ce88744f2b5af53d51b4bac3d409139a6b588309e90bbc836ea079e4e4eed7eae7ab0f1871bd6aee35cd7637d3525153ca2d77c1eebc010a5a905e8ed9b97bb18427592c60bd52c13e7e7fa5191323a5f6b03b4dbf2074edf97087b6340ab3dcc11a56bb04c89a22e2f6f8c27123561800e55e1afae61abd2c2809ddf3fbad93e372e2d1febf6f2e9f7e7a0489069e7a927e37025b32661b9c0fc576ac2dd3db4fe79331e4a48ff54c848a45a7679fdee69899af2320a5cd338b8f15f732d353a95ecf16ed82290d073f22381bc7d81743b7ea8343ac20c25fda4f179f142f10a2a2f6f556cc12de3c728a1ae005ed954752558c1a81ff709ea10f49b80774eca5bcf681a7dc2e5101151c95f94fc80df2ecd9c334ed75195a81bc7a0bfe1af5c3f7703de3dff447f338d819d789a725dcac6c028f0a9a43cc8fd140abb0d40a630a84fbdd751c2a08c28f7fd1d376f98c0fc418f4f0929de03f3038640388abc0ee44a14d7094130e0b503a61a6229f10891ab90dc9c9cc76469c0ab30f7fca9386760676194e04a8db6d2506ecaba8e800bccbe2ddc53d46b9771307445efbf15454e35f5a30bb4cf9aedd129bacd19d05c63645c9589e73829ba5abd87e0bee0fccbb06e4214acbee7c240d1586e05a9a50f0661712e4dc9e71050b36dbc7133bfd32df2cc8ddf9356fd4701f37f32635d3a7be0a50b6d6b85597d95a948df1f91a58a70a221cdc1e880ce1a54644ec91eabd7625497f02e02b291381978ccbdd4761e3ca0128efa146a0ea4e9a13003bc1558db863c2a183460455a0560bc75c7f061449714ddc5431458483630fc3ff769e78c71901ea1e516e5fe04cd0a553f5f2403afaef2e33c31eb55d326c030d76e188676099b5b9f43f100afe25994feb",
"bits": "1d01e71c",
"difficulty": 132777470.6040096,
"chainwork": "000000000000000000000000000000000000000000000000000241daab323e77",
"segid": -1,
"previousblockhash": "0474f6be4f1efb132cfedc252559ef3aee166e6bb58e99160edcf029d13f8017",
"nextblockhash": "000000003331516a9b135e3273ebad53a60921e5d3132fe7d596f5903337f504"
},
"error": null,
"id": "curltest"
}getchaintips
The getchaintips method returns information about all known tips in the block tree, including the main chain and any orphaned branches.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “height” | (numeric) | the height of the chain tip |
| “hash” | (string) | the block hash of the tip |
| “branchlen” | (numeric) | 0 for main chain |
| “status” | (string) | "active" for the main chain |
| “height” | (numeric) | the height of the branch tip |
| “hash” | (string) | the blockhash of the branch tip |
| “branchlen” | (numeric) | the length of the branch connecting the tip to the main chain |
| “status” | (string) | the status of the chain |
| Status | Description |
|---|---|
| “invalid” | this branch contains at least one invalid block |
| “headers-only” | not all blocks for this branch are available, but the headers are valid |
| “valid-headers” | all blocks are available for this branch, but they were never fully validated |
| “valid-fork” | this branch is not part of the active chain, but is fully validated |
| “active” | this is the tip of the active main chain, which is certainly valid |
./hush-cli getchaintips
Response:
[
{
"height": 398,
"hash": "0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084",
"branchlen": 0,
"status": "active"
}
]
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getchaintips", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"height": 398,
"hash": "0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084",
"branchlen": 0,
"status": "active"
}
],
"error": null,
"id": "curltest"
}getchaintxstats nblocks blockhash
The method getchaintxstats returns statistics about the total number and rate of transactions in the chain.
This RPC will return a large amount of additional data if the shielded index (zindex) is enabled.
| Name | Type | Description |
|---|---|---|
| nblocks | (numeric, optional) | the number of blocks in the averaging window. |
| blockhash | (string, optional) | the hash of the block which ends the window |
| Name | Type | Description |
|---|---|---|
| “time” | (numeric) | the timestamp for the final block in the window in UNIX format |
| “txcount” | (numeric) | the total number of transactions in the chain up to this point |
| “nullifiers” | (numeric) | The total number of shielded nullifiers in the chain up to that point. |
| “shielded_txcount” | (numeric) | The total number of shielded (containing a zaddr) transactions in the chain up to that point. |
| “shielded_outputs” | (numeric) | The total number of shielded outputs in the chain up to that point. |
| “shielded_pool_size” | (numeric) | The total number of unspent shielded outputs, i.e. the Shielded Pool or Anonymity Set (anonset). |
| “shielding_txcount” | (numeric) | The total number of shielding (containing a zaddr output) transactions in the chain up to that point. |
| “deshielding_txcount” | (numeric) | The total number of deshielding (containing a zaddr input) transactions in the chain up to that point. |
| “fully_shielded_txcount” | (numeric) | The total number of z2z, AKA fully-shielded (containing only zaddr inputs+outputs) transactions in the chain up to that point. |
| “payments” | (numeric) | The total number of payments in the chain up to that point |
| “shielded_payments” | (numeric) | The total number of shielded (containing a zaddr) payments in the chain up to that point. |
| “shielding_payments” | (numeric) | The total number of shielding (containing a zaddr output) payments in the chain up to that point. |
| “deshielding_payments” | (numeric) | The total number of deshielding (containing a zaddr input) payments in the chain up to that point. |
| “fully_shielded_payments” | (numeric) | The total number of z2z, AKA fully-shielded (containing only zaddr inputs+outputs) payments in the chain up to that point |
| “notarizations” | (numeric) | The total number of notarization transactions in the chain up to that point |
| “window_final_block_hash” | (string) | the hash of the final block in the window |
| “window_final_block_height” | (numeric) | Block height of final block in window. |
| “window_block_count” | (numeric) | the size of the window in the number of blocks |
| “window_tx_count” | (numeric) | the number of transactions in the window; this value is only returned if window_block_count is > 0. |
| “window_interval” | (numeric) | the elapsed time in the window in seconds; this value is only returned if window_block_count is > 0. |
| “window_shielded_txcount” | (numeric) | The total number of shielded (containing a zaddr) transactions in the chain up to that point. |
| “window_shielding_txcount” | (numeric) | The total number of shielding (containing a zaddr output) transactions in the chain up to that point. |
| “window_deshielding_txcount” | (numeric) | The total number of deshielding (containing a zaddr input) transactions in the chain up to that point. |
| “window_fully_shielded_txcount” | (numeric) | The total number of z2z, AKA fully-shielded (containing only zaddr inputs+outputs) transactions in the chain up to that point. |
| “window_shielded_payments” | (numeric) | The total number of shielded (containing a zaddr) payments in the chain up to that point |
| “window_shielding_payments” | (numeric) | The total number of shielding (containing a zaddr output) payments in the chain up to that point |
| “window_deshielding_payments” | (numeric) | The total number of deshielding (containing a zaddr input) payments in the chain up to that point. |
| “window_fully_shielded_payments” | (numeric) | The total number of z2z, AKA fully-shielded (containing only zaddr inputs+outputs) payments in the chain up to that point. |
| “txrate” | (numeric) | the average rate of transactions per second in the window; this value is only returned if window_interval is > 0. |
| “shielded” | (json object) | The set of stats specific to only shieled transactions. |
| “fully_shielded_tx_percent” | (numeric) | The percentage of fully shielded transactions. |
| “shielding_tx_percent” | (numeric) | The percentage of shielding transactions. |
| “deshielding_tx_percent” | (numeric) | The percentage of deshielding transactions |
| “fully_shielded_payments_percent” | (numeric) | The percentage of fully shielded payments |
| “shielding_payments_percent” | (numeric) | The percentage of shielding payments. |
| “deshielding_payments_percent” | (numeric) | The percentage of deshielding payments |
| “organic” | (json object) | The set of stats about organic transactions, i.e. those that are not coinbase and not notarizations |
| “fully_shielded_tx_percent” | (numeric) | The percentage of fully shielded organic transactions |
| “shielding_tx_percent” | (numeric) | The percentage of shielding organic transactions |
| “deshielding_tx_percent” | (numeric) | The percentage of deshielding organic transactions. |
| “fully_shielded_payments_percent” | (numeric) | The percentage of fully shielded organic payments |
| “shielding_payments_percent” | (numeric) | The percentage of shielding organic payments |
| “deshielding_payments_percent” | (numeric) | The percentage of deshielding organic payments. |
./hush-cli getchaintxstats
Response:
{
"time": 1578244656,
"txcount": 304823,
"window_final_block_hash": "00000001aac0e5ee4567a228858bbec75adef3bf84830924c212161316662858",
"window_final_block_height": 152458,
"window_block_count": 17280,
"notarizations": 24467,
"shielded_txcount": 18721,
"fully_shielded_txcount": 514,
"deshielding_txcount": 9057,
"shielding_txcount": 9150,
"shielded_payments": 73882,
"fully_shielded_payments": 31148,
"deshielding_payments": 999,
"shielding_payments": 18505,
"nullifiers": 18105,
"shielded_pool_size": 32578,
"shielded_outputs": 50683,
"window_tx_count": 32733,
"window_interval": 2624536,
"txrate": 0.01247191884584551,
"notarization_txrate": 0.0008755833412077411,
"shielded_txrate": 0.0008508170587105682,
"fully_shielded_txrate": 0.0001329758860232818,
"paymentrate": 0.06856640564274981,
"shielded_paymentrate": 0.01358678257794902,
"fully_shielded_paymentrate": 0.01179827596192241,
"window_payments": 179955,
"window_notarizations": 2298,
"window_fully_shielded_txcount": 349,
"window_deshielding_txcount": 854,
"window_shielding_txcount": 1030,
"window_shielded_txcount": 2233,
"window_fully_shielded_payments": 30965,
"window_shielded_payments": 35659,
"window_shielding_payments": 2664,
"window_deshielding_payments": 10,
"shielded_tx_percent": 0.06821861729752848,
"fully_shielded_tx_percent": 0.01066202303485779,
"shielding_tx_percent": 0.0314667155470015,
"deshielding_tx_percent": 0.0260898787156692,
"shielded_payments_percent": 0.1981550943291378,
"fully_shielded_payments_percent": 0.1720707954766469,
"shielding_payments_percent": 0.01480370092523131,
"deshielding_payments_percent": 5.556944791753494e-05,
"shielded": {
"fully_shielded_tx_percent": 0.1562919838781908,
"shielding_tx_percent": 0.4612628750559785,
"deshielding_tx_percent": 0.3824451410658307,
"fully_shielded_payments_percent": 0.8683642278246726,
"shielding_payments_percent": 0.07470764743823438,
"deshielding_payments_percent": 0.0002804341120053843
},
"organic": {
"shielded_tx_percent": 0.1697453439756746,
"fully_shielded_tx_percent": 0.02652983656404409,
"shielding_tx_percent": 0.07829722538958571,
"deshielding_tx_percent": 0.06491828202204485,
"shielded_payments_percent": 0.2223448499473117,
"fully_shielded_payments_percent": 0.19307631393529,
"shielding_payments_percent": 0.01661086065957089,
"deshielding_payments_percent": 6.235308055394477e-05,
"paymentrate": 0.06110680135460134,
"txrate": 0.005012314557697056,
"txcount": 13155,
"payments": 160377
}
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getchaintxstats", "params": [2016] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"time": 1578244656,
"txcount": 304823,
"window_final_block_hash": "00000001aac0e5ee4567a228858bbec75adef3bf84830924c212161316662858",
"window_final_block_height": 152458,
"window_block_count": 17280,
"notarizations": 24467,
"shielded_txcount": 18721,
"fully_shielded_txcount": 514,
"deshielding_txcount": 9057,
"shielding_txcount": 9150,
"shielded_payments": 73882,
"fully_shielded_payments": 31148,
"deshielding_payments": 999,
"shielding_payments": 18505,
"nullifiers": 18105,
"shielded_pool_size": 32578,
"shielded_outputs": 50683,
"window_tx_count": 32733,
"window_interval": 2624536,
"txrate": 0.01247191884584551,
"notarization_txrate": 0.0008755833412077411,
"shielded_txrate": 0.0008508170587105682,
"fully_shielded_txrate": 0.0001329758860232818,
"paymentrate": 0.06856640564274981,
"shielded_paymentrate": 0.01358678257794902,
"fully_shielded_paymentrate": 0.01179827596192241,
"window_payments": 179955,
"window_notarizations": 2298,
"window_fully_shielded_txcount": 349,
"window_deshielding_txcount": 854,
"window_shielding_txcount": 1030,
"window_shielded_txcount": 2233,
"window_fully_shielded_payments": 30965,
"window_shielded_payments": 35659,
"window_shielding_payments": 2664,
"window_deshielding_payments": 10,
"shielded_tx_percent": 0.06821861729752848,
"fully_shielded_tx_percent": 0.01066202303485779,
"shielding_tx_percent": 0.0314667155470015,
"deshielding_tx_percent": 0.0260898787156692,
"shielded_payments_percent": 0.1981550943291378,
"fully_shielded_payments_percent": 0.1720707954766469,
"shielding_payments_percent": 0.01480370092523131,
"deshielding_payments_percent": 5.556944791753494e-05,
"shielded": {
"fully_shielded_tx_percent": 0.1562919838781908,
"shielding_tx_percent": 0.4612628750559785,
"deshielding_tx_percent": 0.3824451410658307,
"fully_shielded_payments_percent": 0.8683642278246726,
"shielding_payments_percent": 0.07470764743823438,
"deshielding_payments_percent": 0.0002804341120053843
},
"organic": {
"shielded_tx_percent": 0.1697453439756746,
"fully_shielded_tx_percent": 0.02652983656404409,
"shielding_tx_percent": 0.07829722538958571,
"deshielding_tx_percent": 0.06491828202204485,
"shielded_payments_percent": 0.2223448499473117,
"fully_shielded_payments_percent": 0.19307631393529,
"shielding_payments_percent": 0.01661086065957089,
"deshielding_payments_percent": 6.235308055394477e-05,
"paymentrate": 0.06110680135460134,
"txrate": 0.005012314557697056,
"txcount": 13155,
"payments": 160377
},
"error": null,
"id": "curltest"
}getdifficulty
The getdifficulty method returns the proof-of-work difficulty as a multiple of the minimum difficulty.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| number | (numeric) | the proof-of-work difficulty as a multiple of the minimum difficulty |
./hush-cli getdifficulty
Response:
1.000023305960651
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getdifficulty", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": 1.000023305960651,
"error": null,
"id": "curltest"
}getlastsegidstakes depth
The getlastsegidstakes method returns an object containing the number of blocks staked by each segid in the last X number of blocks, where the value of X is equal to the indicated depth.
::: tip Note
Only applies to -ac_staked Smart Chains
:::
| Name | Type | Description |
|---|---|---|
| depth | (numeric, required) | the number of blocks to scan, starting from the current height and working backwards |
| Name | Type | Description |
|---|---|---|
| “NotSet” | (numeric) | the number of blocks that have no SegId set |
| “PoW” | (numeric) | the number of blocks created through PoW |
| “PoSPerc” | (numeric) | the percentage of blocks created through PoS |
| “SegIds” | (json object) | the json containing the data of number of blocks in each SegId |
| “n” | (numeric) | the number of blocks staked from SegId n in the last X blocks, where X is equal to the indicated depth |
./hush-cli getlastsegidstakes 1000
Response:
{
"NotSet": 0,
"PoW": 12,
"PoSPerc": 98,
"SegIds": {
"0": 20,
"1": 16,
"2": 16,
"3": 18,
"4": 19,
( .... omitted for brevity ... )
"60": 11,
"61": 16,
"62": 18,
"63": 17
}
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getlastsegidstakes", "params": [1000] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"NotSet": 0,
"PoW": 11,
"PoSPerc": 98,
"SegIds": {
"0": 20,
"1": 16,
"2": 16,
"3": 17,
( .... omitted for brevity ... )
"60": 11,
"61": 16,
"62": 18,
"63": 17
}
},
"error": null,
"id": "curltest"
}getmempoolinfo
The getmempoolinfo method returns details on the active state of the transaction memory pool.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “size” | (numeric) | the current transaction count |
| “bytes” | (numeric) | the sum of all transaction sizes |
| “usage” | (numeric) | the total memory usage for the mempool |
./hush-cli getmempoolinfo
Response:
{
"size": 1,
"bytes": 226,
"usage": 896
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getmempoolinfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"size": 1,
"bytes": 226,
"usage": 896
},
"error": null,
"id": "curltest"
}getrawmempool ( verbose )
The getrawmempool method returns all transaction ids in the memory pool as a json array of transaction ids.
The verbose input is optional and is false by default. When it is true, the method instead returns a json object with various related data.
| Name | Type | Description |
|---|---|---|
| verbose | (boolean, optional, default=false) | true for a json object, false for a json array of transaction ids |
false)| Name | Type | Description |
|---|---|---|
| “transaction_id” | (string) | the transaction id |
true)| Name | Type | Description |
|---|---|---|
| “transaction_id”: { … } | (json object) | |
| “size” | (numeric) | the transaction size in bytes |
| “fee” | (numeric) | the transaction fee |
| “time” | (numeric) | the local time transaction entered pool in seconds since 1 Jan 1970 GMT |
| “height” | (numeric) | the block height wherein the transaction entered the mempool |
| “startingpriority” | (numeric) | the priority when the transaction entered the mempool |
| “currentpriority” | (numeric) | the transaction priority at the current height |
| “depends”: { … } | (array) | unconfirmed transactions used as inputs for this transaction |
| “transaction_id” | (string) | the parent transaction id |
./hush-cli getrawmempool true
Response:
{
"44760f145303cae081819c6e54665d6716c98e97691603b4edf133b8180e6048": {
"size": 488,
"fee": 0.00011462,
"time": 1536618366,
"height": 448,
"startingpriority": 20910198.65384615,
"currentpriority": 20910198.65384615,
"depends": []
}
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getrawmempool", "params": [true] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"44760f145303cae081819c6e54665d6716c98e97691603b4edf133b8180e6048": {
"size": 488,
"fee": 0.00011462,
"time": 1536618366,
"height": 448,
"startingpriority": 20910198.65384615,
"currentpriority": 20910198.65384615,
"depends": []
}
},
"error": null,
"id": "curltest"
}getspentinfo ‘{“txid”: “txid_string”, “index”}’
The getspentinfo method returns the transaction id and index where the given output is spent.
The method requires spentindex to be enabled.
| Name | Type | Description |
|---|---|---|
| “txid” | (string) | the hex string of the transaction id |
| “index” | (number) | the output’s index |
| Name | Type | Description |
|---|---|---|
| “txid” | (string) | the transaction id |
| “index” | (number) | the spending input index |
./hush-cli getspentinfo '{"txid": "4479f2c05ba22adf2333db724f247a09effcc9edea8c079da0da05d3a0451064", "index": 0}'
Response:
{
"txid": "d2a7b19178ff6b4b1d54befc300879239969716322e4bcd2742162d86ef113c8",
"index": 228,
"height": 994953
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getspentinfo", "params": [{"txid": "4479f2c05ba22adf2333db724f247a09effcc9edea8c079da0da05d3a0451064", "index": 0}] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"txid": "d2a7b19178ff6b4b1d54befc300879239969716322e4bcd2742162d86ef113c8",
"index": 228,
"height": 994953
},
"error": null,
"id": "curltest"
}gettxout “txid_string” vout_number ( includemempool_bool )
The gettxout method returns details about an unspent transaction output.
| Name | Type | Description |
|---|---|---|
| “txid” | (string, required) | the transaction id |
| vout | (numeric, required) | the vout value |
| includemempool | (boolean, optional) | whether to include the mempool |
| Name | Type | Description |
|---|---|---|
| “bestblock” | (string) | the block hash |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service aware |
| “rawconfirmations” | (numeric) | the raw confirmations (number of blocks on top of this block with this transaction) |
| “value” | (numeric) | the transaction value |
| “scriptPubKey”: | (json object) | |
| “asm” | (string) | scriptPubKey in assembly format |
| “hex” | (string) | scriptPubKey in hex format |
| “reqSigs” | (numeric) | the number of required signatures |
| “type” | (string) | the type, e.g. pubkeyhash |
| “addresses” | (array of strings) | an array of Komodo addresses |
| “address” | (string) | the blockchain address |
| “version” | (numeric) | the version |
| “coinbase” | (boolean) | whether this is a coinbase transaction |
./hush-cli gettxout "d7f9b34ad3e86f48fce55dbec1f2925b8dcbd15199977fd75d224254db9ae80d" 1
Response:
{
"bestblock": "061d724764a60009e782aa7a52c7543b6b3ca7b552bffcd3e3b5010caeaeb19e",
"confirmations": 1,
"rawconfirmations": 14,
"value": 13541.42222075,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 4518e50fdb31bb5951cd570342325bde15408fa3 OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a9144518e50fdb31bb5951cd570342325bde15408fa388ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": ["RFaYXUJUE7CziS73EE6gvaqFduVo9KWjXT"]
},
"version": 4,
"coinbase": false
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "gettxout", "params": ["d7f9b34ad3e86f48fce55dbec1f2925b8dcbd15199977fd75d224254db9ae80d", 1] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"bestblock": "000000020cce6743086cbcb97e90c0ad2735118615dd22b393e10f67cb6f13c7",
"confirmations": 1,
"rawconfirmations": 15,
"value": 13541.42222075,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 4518e50fdb31bb5951cd570342325bde15408fa3 OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a9144518e50fdb31bb5951cd570342325bde15408fa388ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": ["RFaYXUJUE7CziS73EE6gvaqFduVo9KWjXT"]
},
"version": 4,
"coinbase": false
},
"error": null,
"id": "curltest"
}gettxoutproof ‘[“transaction_id”, … ]’ ( “blockhash_string” )
The gettxoutproof method returns a hex-encoded proof showing that the indicated transaction was included in a block.
::: tip
The gettxoutproof method relies on the txindex runtime parameter. This parameter is enabled by default on all KMD-based blockchains, and should never be disabled.
:::
| Name | Type | Description |
|---|---|---|
| “txid” | (string) | a transaction hash |
| “blockhash” | (string, optional) | if specified, the method looks for the relevant transaction id in this block hash |
| Name | Type | Description |
|---|---|---|
| “data” | (string) | a string that is a serialized, hex-encoded data for the proof |
./hush-cli gettxoutproof '["c71f4a2ebf87bdd588e3aa168917933ee4be1661245ebf52d5708a8339cf9d7a"]' "0a28e2fb630b282138bf23bb79f597b11acff6f57c8d9c1c10fa54770035c813"
Response:
040000004cd8bd98c66020496d0b34a5f5412400146ba10d6c7ab4286f84f7008d8d390e9ca9575183f60906e293e9766997396bec59f1c0b966085de3d17f8ac3c9d5280000000000000000000000000000000000000000000000000000000000000000da05975bf50e0f202d004b81fcc388cfd411d8c7c59a548e070b5affe938ce8ce830f10b298b00002402939a9a31df1305b40d26d9748283b102c708258717248d0d63f01d2957d8e3dcf56f6e03000000022e4babc29707fbdd8da2e4277b7c8b8b09e837f409eb047c936904d75fc8e6267a9dcf39838a70d552bf5e246116bee43e93178916aae388d5bd87bf2e4a1fc7010dgettxoutsetinfo
The gettxoutsetinfo method returns statistics about the unspent transaction output set.
::: tip
Note this call may take a long time to complete, depending on the state of your blockchain.
:::
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “height” | (numeric) | the current block height (index) |
| “bestblock” | (string) | the best block hash hex |
| “transactions” | (numeric) | the number of transactions |
| “txouts” | (numeric) | the number of output transactions |
| “bytes_serialized” | (numeric) | the serialized size |
| “hash_serialized” | (string) | the serialized hash |
| “total_amount” | (numeric) | the total amount |
./hush-cli gettxoutsetinfo
Response:
{
"height": 459,
"bestblock": "0a28e2fb630b282138bf23bb79f597b11acff6f57c8d9c1c10fa54770035c813",
"transactions": 258,
"txouts": 261,
"bytes_serialized": 18051,
"hash_serialized": "fdd2039fa21400be0928b26dfe534f543dc5090989bcbd97fdc81b30ce7dca3a",
"total_amount": 10.16456229
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "gettxoutsetinfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"height": 459,
"bestblock": "0a28e2fb630b282138bf23bb79f597b11acff6f57c8d9c1c10fa54770035c813",
"transactions": 258,
"txouts": 261,
"bytes_serialized": 18051,
"hash_serialized": "fdd2039fa21400be0928b26dfe534f543dc5090989bcbd97fdc81b30ce7dca3a",
"total_amount": 10.16456229
},
"error": null,
"id": "curltest"
}kvsearch “key_string”
The kvsearch method searches for a key stored via the kvupdate command.
::: tip
This feature is only available for Smart Chains.
:::
| Name | Type | Description |
|---|---|---|
| key | (string, required) | the key for which the user desires to search the chain |
| Name | Type | Description |
|---|---|---|
| “coin” | (string) | the chain on which the key is stored |
| “currentheight” | (numeric) | the current height of the chain |
| “key” | (string) | the key |
| “keylen” | (string) | the length of the key |
| “owner” | (string) | a hex string representing the owner of the key |
| “height” | (numeric) | the height at which the key was stored |
| “expiration” | (numeric) | the height at which the key will expire |
| “flags” | (numeric) | 1 if the key was created with a password; 0 otherwise |
| “value” | (string) | the stored value |
| “valuesize” | (string) | the amount of characters stored |
./hush-cli kvsearch examplekey
Response:
{
"coin": "MYCOIN",
"currentheight": 566,
"key": "examplekey",
"keylen": 10,
"owner": "1ff91604c6adb6ec550e7575fe9f1ca591704572e125f55bed03a21c242c31b7",
"height": 561,
"expiration": 2001,
"flags": 0,
"value": "examplevalue",
"valuesize": 12
}
You can find your rpcuser, rpcpassword, and rpcport in the hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "kvsearch", "params": ["examplekey"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"coin": "MYCOIN",
"currentheight": 566,
"key": "examplekey",
"keylen": 10,
"owner": "1ff91604c6adb6ec550e7575fe9f1ca591704572e125f55bed03a21c242c31b7",
"height": 561,
"expiration": 2001,
"flags": 0,
"value": "examplevalue",
"valuesize": 12
},
"error": null,
"id": "curltest"
}kvupdate “key_string” “value_string” days “passphrase_string”
The kvupdate method stores a key/value pair via OP_RETURN.
::: tip
This feature is available only for Smart Chains. The maximum value memory size is 8kB.
:::
| Name | Type | Description |
|---|---|---|
| “key” | (string, required) | key (should be unique) |
| “value” | (string, required) | value |
| “days” | (numeric, required) | amount of days before the key expires (1440 blocks/day); minimum 1 day |
| “passphrase” | (string, optional) | passphrase required to update this key |
| Name | Type | Description |
|---|---|---|
| “coin” | (string) | the chain on which the key is stored |
| “height” | (numeric) | the height at which the key was stored |
| “expiration” | (numeric) | the height at which the key will expire |
| “flags” | (string) | the amount of days the key will be stored |
| “key” | (numeric) | the stored key |
| “keylen” | (numeric) | the length of the key |
| “value” | (numeric) | the stored value |
| “valuesize” | (string) | the length of the stored value |
| “fee” | (string) | the transaction fee paid to store the key |
| “txid” | (string) | the transaction id |
./hush-cli kvupdate "examplekey" "examplevalue" 2 "examplepassphrase"
Response:
{
"coin": "HUSH",
"owner": "1ff91604c6adb6ec550e7575fe9f1ca591704572e125f55bed03a21c242c31b7",
"height": 566,
"expiration": 2006,
"flags": 3,
"key": "examplekey",
"keylen": 10,
"value": "examplevalue",
"valuesize": 12,
"fee": 0.001,
"txid": "2dc76f39188bb006931a2c924fdf66bc3baf149bf880fffad778cabd6ace5749"
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "kvupdate", "params": ["examplekey", "examplevalue", "2", "examplepassphrase"] }' -H 'content-type: text/plain;' http://127.0.0.1:9801
Response:
{
"result": {
"coin": "HUSH",
"owner": "1ff91604c6adb6ec550e7575fe9f1ca591704572e125f55bed03a21c242c31b7",
"height": 566,
"expiration": 2006,
"flags": 3,
"key": "examplekey",
"keylen": 10,
"value": "examplevalue",
"valuesize": 12,
"fee": 0.001,
"txid": "9f44dc664882198b14e9a8c466d466efcdd070ccb6f57be8e2884aa11e7b2a30"
},
"error": null,
"id": "curltest"
}minerids height
The minerids method returns information about the notary nodes and external miners at a specific block height. The response will calculate results according to the 2000 blocks proceeding the indicated “height” block.
| Name | Type | Description |
|---|---|---|
| heights | (number) | the block height for the query |
| Name | Type | Description |
|---|---|---|
| “mined”: | ||
| “notaryid” | (number) | the id of the specific notary node |
| “kmdaddress” | (string) | the KMD address of the notary node |
| “pubkey” | (string) | the public signing key of the notary node |
| “blocks” | (number) |
./hush-cli minerids 1000000
Response:
{
"mined": [
{
"notaryid": 0,
"KMDaddress": "RNJmgYaFF5DbnrNUX6pMYz9rcnDKC2tuAc",
"pubkey": "03b7621b44118017a16043f19b30cc8a4cfe068ac4e42417bae16ba460c80f3828",
"blocks": 22
}
... (63 responses omitted for brevity)
,
{
"pubkey": "external miners",
"blocks": 541
}
],
"numnotaries": 64
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "minerids", "params": ["1000000"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"mined": [
{
"notaryid": 0,
"KMDaddress": "RNJmgYaFF5DbnrNUX6pMYz9rcnDKC2tuAc",
"pubkey": "03b7621b44118017a16043f19b30cc8a4cfe068ac4e42417bae16ba460c80f3828",
"blocks": 22
}
... (63 responses omitted for brevity)
,
{
"pubkey": "external miners",
"blocks": 541
}
],
"numnotaries": 64
},
"error": null,
"id": "curltest"
}notaries height timestamp
notaries height
notaries timestamp
The notaries method returns the public key, BTC address, and KMD address for each Komodo notary node.
Either or both of the height and timestamp parameters will suffice.
| Name | Type | Description |
|---|---|---|
| height | (number) | the block height desired for the query |
| timestamp | (number) | the timestamp of the block desired for the query |
| Name | Type | Description |
|---|---|---|
| “notaries”: [ … ] | (array) | |
| “pubkey” | (string) | the public signing key of the indicated notary node, used on the KMD network to create notary-node authorized transactions |
| “BTCaddress” | (string) | the public BTC address the notary node uses on the BTC blockchain to create notarizations |
| “KMDaddress” | (string) | the public KMD address the notary node uses on the KMD blockchain to create notarizations |
| “numnotaries” | (number) | the number of notary nodes; typically this value is 64, but the value may vary on rare circumstances, such as during election seasons |
| “height” | (number) | the block height number at which the notary-node information applies |
| “timestamp” | (number) | the timestamp at which the notary-node information applies |
./hush-cli notaries 1536365515
Response:
{
"notaries": [
{
"pubkey": "03b7621b44118017a16043f19b30cc8a4cfe068ac4e42417bae16ba460c80f3828",
"BTCaddress": "1E2ac2gxeFR2ir1H3vqETTperWkiXkwy99",
"KMDaddress": "RNJmgYaFF5DbnrNUX6pMYz9rcnDKC2tuAc"
},
... (63 responses omitted from the documentation for brevity)
],
"numnotaries": 64,
"height": 1536365515,
"timestamp": 1536792974
}
You can find your rpcuser, rpcpassword, and rpcport in the hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "notaries", "params": ["1000000"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"notaries": [
{
"pubkey": "03b7621b44118017a16043f19b30cc8a4cfe068ac4e42417bae16ba460c80f3828",
"BTCaddress": "1E2ac2gxeFR2ir1H3vqETTperWkiXkwy99",
"KMDaddress": "RNJmgYaFF5DbnrNUX6pMYz9rcnDKC2tuAc"
},
... (63 responses omitted from documentation for brevity)
],
"numnotaries": 64,
"height": 1000000,
"timestamp": 1536365515
},
"error": null,
"id": "curltest"
}verifychain ( checklevel numblocks )
The verifychain method verifies the coin daemon’s blockchain database.
::: tip
Depending on the state of your blockchain database and daemon, this call can take a prolonged period of time to complete.
:::
| Name | Type | Description |
|---|---|---|
| checklevel | (numeric, optional, 0-4, default=3) | indicates the thoroughness of block verification |
| numblocks | (numeric, optional, default=288, 0=all) | indicates the number of blocks to verify |
| Name | Type | Description |
|---|---|---|
| true/false | (boolean) | whether the verification was successful |
./hush3-cli verifychain
Response:
true
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "verifychain", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": true,
"error": null,
"id": "curltest"
}verifytxoutproof “proof_string”
The verifytxoutproof method verifies that a proof points to a transaction in a block. It returns the transaction to which the proof is committed, or it will throw an RPC error if the block is not in the current best chain.
| Name | Type | Description |
|---|---|---|
| “proof_string” | (string, required) | the hex-encoded proof generated by gettxoutproof |
| Name | Type | Description |
|---|---|---|
| “txid” | (string) | the transaction ids to which the proof commits; the array is empty if the proof is invalid |
./hush-cli verifytxoutproof "040000004cd8bd98c66020496d0b34a5f5412400146ba10d6c7ab4286f84f7008d8d390e9ca9575183f60906e293e9766997396bec59f1c0b966085de3d17f8ac3c9d5280000000000000000000000000000000000000000000000000000000000000000da05975bf50e0f202d004b81fcc388cfd411d8c7c59a548e070b5affe938ce8ce830f10b298b00002402939a9a31df1305b40d26d9748283b102c708258717248d0d63f01d2957d8e3dcf56f6e03000000022e4babc29707fbdd8da2e4277b7c8b8b09e837f409eb047c936904d75fc8e6267a9dcf39838a70d552bf5e246116bee43e93178916aae388d5bd87bf2e4a1fc7010d"
Response:
["c71f4a2ebf87bdd588e3aa168917933ee4be1661245ebf52d5708a8339cf9d7a"]
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "verifytxoutproof", "params": ["040000004cd8bd98c66020496d0b34a5f5412400146ba10d6c7ab4286f84f7008d8d390e9ca9575183f60906e293e9766997396bec59f1c0b966085de3d17f8ac3c9d5280000000000000000000000000000000000000000000000000000000000000000da05975bf50e0f202d004b81fcc388cfd411d8c7c59a548e070b5affe938ce8ce830f10b298b00002402939a9a31df1305b40d26d9748283b102c708258717248d0d63f01d2957d8e3dcf56f6e03000000022e4babc29707fbdd8da2e4277b7c8b8b09e837f409eb047c936904d75fc8e6267a9dcf39838a70d552bf5e246116bee43e93178916aae388d5bd87bf2e4a1fc7010d"] }' -H 'content-type: text/plain;' http://127.0.0.1:9801
Response:
{
"result": [
"c71f4a2ebf87bdd588e3aa168917933ee4be1661245ebf52d5708a8339cf9d7a"
],
"error": null,
"id": "curltest"
}
hushd software, and are made available through the hush-cli software.getinfo
The getinfo method returns an object containing various state info.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “version” | (numeric) | the server version |
| “protocolversion” | (numeric) | the protocol version |
| “walletversion” | (numeric) | the wallet version |
| “balance” | (numeric) | the total balance of the wallet |
| “blocks” | (numeric) | the current number of blocks processed in the server |
| “timeoffset” | (numeric) | the time offset |
| “connections” | (numeric) | the number of connections |
| “proxy” | (string, optional) | the proxy used by the server |
| “difficulty” | (numeric) | the current difficulty |
| “testnet” | (boolean) | if the server is using testnet or not |
| “keypoololdest” | (numeric) | the timestamp (seconds since GMT epoch) of the oldest pre-generated key in the key pool |
| “keypoolsize” | (numeric) | how many new keys are pre-generated |
| “unlocked_until” | (numeric) | the timestamp in seconds since epoch (midnight Jan 1 1970 GMT) that the wallet is unlocked for transfers, or 0 if the wallet is locked |
| “paytxfee” | (numeric) | the transaction fee set in COIN/kB |
| “relayfee” | (numeric) | minimum relay fee for non-free transactions in COIN/kB |
| “errors” | (string) | any error messages |
./hush-cli getinfo
Response:
{
"version": 1001550,
"protocolversion": 170003,
"KMDversion": "0.2.0",
"notarized": 0,
"prevMoMheight": 0,
"notarizedhash": "0000000000000000000000000000000000000000000000000000000000000000",
"notarizedtxid": "0000000000000000000000000000000000000000000000000000000000000000",
"notarizedtxid_height": "mempool",
"KMDnotarized_height": 0,
"notarized_confirms": 0,
"walletversion": 60000,
"balance": 10.16429765,
"blocks": 459,
"longestchain": 0,
"timeoffset": 0,
"tiptime": 1536624090,
"connections": 0,
"proxy": "",
"difficulty": 1.000026345948652,
"testnet": false,
"keypoololdest": 1536262464,
"keypoolsize": 101,
"paytxfee": 0.0,
"relayfee": 0.000001,
"errors": "",
"name": "SIDD",
"p2pport": 9800,
"rpcport": 9801,
"magic": -759875707,
"premine": 10
}
You can find your rpcuser, rpcpassword, and rpcport in hus3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getinfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"version": 1001550,
"protocolversion": 170003,
"KMDversion": "0.2.0",
"notarized": 0,
"prevMoMheight": 0,
"notarizedhash": "0000000000000000000000000000000000000000000000000000000000000000",
"notarizedtxid": "0000000000000000000000000000000000000000000000000000000000000000",
"notarizedtxid_height": "mempool",
"KMDnotarized_height": 0,
"notarized_confirms": 0,
"walletversion": 60000,
"balance": 10.16429765,
"blocks": 459,
"longestchain": 0,
"timeoffset": 0,
"tiptime": 1536624090,
"connections": 0,
"proxy": "",
"difficulty": 1.000026345948652,
"testnet": false,
"keypoololdest": 1536262464,
"keypoolsize": 101,
"relayfee": 1e-6,
"paytxfee": 0,
"errors": "",
"name": "SIDD",
"p2pport": 9800,
"rpcport": 9801,
"magic": -759875707,
"premine": 10
},
"error": null,
"id": "curltest"
}help ( “command” )
The help method lists all commands, or all information for a specified command.
| Name | Type | Description |
|---|---|---|
| “command” | (string, optional) | the command requiring assistance |
| Name | Type | Description |
|---|---|---|
| “command” | (string, optional) | the command requiring assistance |
./hush-cli help
Response:
== Addressindex ==
getaddressbalance
getaddressdeltas
getaddressmempool
getaddresstxids
getaddressutxos
getsnapshot
== Auction ==
auctionaddress [pubkey]
== Blockchain ==
coinsupply <height>
getbestblockhash
getblock "hash|height" ( verbose )
getblockchaininfo
getblockcount
getblockhash index
getblockhashes timestamp
getblockheader "hash" ( verbose )
getchaintips
getdifficulty
........ (other responses omitted for brevity)
Command:
./hush-cli help getaddressbalance
Response:
Returns the balance for an address(es) (requires addressindex to be enabled).
Arguments:
{
"addresses"
[
"address" (string) The base58check encoded address
,...
]
}
Result:
{
"balance" (string) The current balance in satoshis
"received" (string) The total number of satoshis received (including change)
}
Examples:
> hush-cli getaddressbalance '{"addresses": ["RY5LccmGiX9bUHYGtSWQouNy1yFhc5rM87"]}'
> curl --user myusername --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddressbalance", "params": [{"addresses": ["RY5LccmGiX9bUHYGtSWQouNy1yFhc5rM87"]}] }' -H 'content-type: text/plain;' http://127.0.0.1:7771/
stop
The stop method instructs the Hush daemon to shut down.
The amount of time it takes to shut down the chain will vary depending on the chain’s current state.
::: warning
Forcefully stopping the chain should be avoided, as it may corrupt the local database. In the event of a corrupted database, the user will need to resync.
:::
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| Hush server stopping | ||
| [COIN] Hush server stopping |
./hush-cli stop
Response
"Hush server stopping"
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "stop", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{ "result": "Hush server stopping", "error": null, "id": "curltest" }
hushd software, and are made available through the hush-cli software.generate numblocks
::: tip
This function can only be used in the regtest mode (for testing purposes).
:::
The generate method instructs the coin daemon to immediately mine the indicated number of blocks.
| Name | Type | Description |
|---|---|---|
| numblocks | (numeric) | the desired number of blocks to generate |
| Name | Type | Description |
|---|---|---|
| blockhashes | (array) | hashes of blocks generated |
./hush-cli generate 2
Response
[
"0475316d63fe48bb9d58373595cb334fc2553f65496edfb2fb17b9ed06f4c480",
"00d29a2b7dec52baa9ab8e4264363f32b4989eef7dbb0a9932fbc11274195b5a"
]getgenerate
The getgenerate method returns a boolean value indicating the server’s mining status.
The default value is false.
::: tip
See also gen.
:::
| Name | Type | Description |
|---|---|---|
| (none) | (none) |
| Name | Type | Description |
|---|---|---|
| true/false | (boolean) | indicates whether the server is set to generate coins |
./hush-cli getgenerate
Response:
false
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getgenerate", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": false,
"error": null,
"id": "curltest"
}setgenerate generate ( genproclimit )
The setgenerate method allows the user to set the generate property in the coin daemon to true or false, thus turning generation (mining/staking) on or off.
Generation is limited to genproclimit processors. Set genproclimit to -1 to use maximum available processors.
::: tip
See also the getgenerate method to query the current setting, and genproclimit for setting the default number of processors the daemon uses through the .conf file.
:::
| Name | Type | Description |
|---|---|---|
| generate | (boolean, required) | set to true to turn on generation; set to off to turn off generation |
| genproclimit | (numeric, optional) | set the processor limit for when generation is on; use value “-1” for unlimited |
| Name | Type | Description |
|---|---|---|
| (none) | (none) |
./hush-cli setgenerate true -1
Response:
(none)
./hush-cli setgenerate true 0
Response:
(none)
./hush-cli setgenerate true 4
Response:
(none)
./hush-cli getgenerate
Response:
true
./hush-cli setgenerate false
Response:
(none)
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "setgenerate", "params": [true, 1] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": null,
"error": null,
"id": "curltest"
}getblocksubsidy height_number
The getblocksubsidy method returns the block-subsidy reward. The resulting calculation takes into account the mining slow start. This method can be used in conjunction with custom mining rewards designed by the developers of a KMD-based Smart Chain.
| Name | Type | Description |
|---|---|---|
| height | (numeric, optional) | the block height; if the block height is not provided, the method defaults to the current height of the chain |
| Name | Type | Description |
|---|---|---|
| “miner” | (numeric) | the mining reward amount |
./hush-cli getblocksubsidy 100
Response:
{
"miner": 3.0
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblocksubsidy", "params": [1000] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Responses
{
"result": {
"miner": 3.0
},
"error": null,
"id": "curltest"
}
getblocktemplate ( “jsonrequestobject” )
::: tip
See https://en.bitcoin.it/wiki/BIP_0022 the Bitcoin wiki for the full specification.
:::
The getblocktemplate method returns data that is necessary to construct a block.
If the request parameters include a mode key, it is used to explicitly select between the default ‘template’ request, a ‘proposal’ or ‘disablecb’.
There are many features in the Komodo Ecosystem that can make a Smart Chain’s daemon produce non-standard coinbase transactions. Examples include a Smart Chain parameter that creates new coins for a specific pubkey in every block or a CC module that adds outputs to the coinbase transaction.
This can be dealt using a mode called disablecb
./hush-cli getblocktemplate '{"mode":"disablecb"}'
The block template produced using this mode doesn’t have the "coinbasetxn": { ... } json object but adds the coinbase transaction to the "transactions":[ ... ] array, just like a regular transaction.
Now the pool software can use the "transactions":[ ... ] array to create a block and take fees in the payment processor. The knomp fork by @blackjok3rtt uses this mode.
| Name | Type | Description |
|---|---|---|
| “jsonrequestobject” : { … } | (string, optional) | a json object in the following spec |
| “mode” | (string, optional) | this must be set to “template” or omitted |
| “capabilities”: [ … ] | (array, optional) | a list of strings |
| “support” | (string) | client side supported features: “longpoll”, “coinbasetxn”, “coinbasevalue”, “proposal”, “serverlist”, “workid” |
| Name | Type | Description |
|---|---|---|
| “version” | (numeric) | the block version |
| “previousblockhash” | (string) | the hash of current highest block |
| “finalsaplingroothash” | (string) | the hash of the final sapling root |
| “transactions”:[ … ] | (array) | the contents of non-coinbase transactions that should be included in the next block |
| “data” | (string) | transaction data encoded in hexadecimal (byte-for-byte) |
| “hash” | (string) | the hash/id encoded in little-endian hexadecimal |
| “depends” : [ … ] | (array) | an array of numbers |
| number | (numeric) | the indexes of transactions that must be present in the final block if this transaction is present in the final block; the index of the array of transactions starts with “1” |
| “fee” | (numeric) | the difference in value between transaction inputs and outputs in satoshis; for coinbase transactions, this is the negative number of the total collected block fees, not including the block subsidy; if a key is not present, the fee is unknown and clients MUST NOT assume it is not present |
| “sigops” | (numeric) | the total number of sigops, as counted for the purposes of block limits; if a key is not present, the sigop count is unknown and clients MUST NOT assume they are not present. |
| “required” | (boolean) | if provided and true, this transaction must be in the final block |
| “coinbasetxn”: { … } | (json object) | information for the coinbase transaction |
| “longpollid” | (string) | the last seen longpollid when this response was sent by the server |
| “data” | (string) | transaction data encoded in hexadecimal (byte-for-byte) |
| “hash” | (string) | the hash/id encoded in little-endian hexadecimal |
| “depends” : [ … ] | (array) | an array of numbers |
| “fee” | (numeric) | the difference in value between transaction inputs and outputs in satoshis; for coinbase transactions, this is the negative number of the total collected block fees, not including the block subsidy; if a key is not present, the fee is unknown and clients MUST NOT assume it is not present |
| “sigops” | (numeric) | the total number of sigops, as counted for the purposes of block limits; if a key is not present, the sigop count is unknown and clients MUST NOT assume they are not present. |
| “foundersreward” | (numeric) | the founder’s reward that should be paid out in this block; this key is present only in the blocks that payout the founder’s reward; present only in chains with ac_founders enabled |
| “coinbasevalue” | (numeric) | the value of the coinbase transaction (in satoshis) |
| “required” | (boolean) | if provided and true, this transaction must be in the final block |
| “target” | (string) | the hash target |
| “mintime” | (numeric) | the minimum timestamp appropriate for next block time in seconds since epoch (Jan 1 1970 GMT) |
| “mutable”: [ … ] | (array of strings) | a list of ways the block template may be changed |
| “value” | (string) | a way the block template may be changed, e.g. “time”, “transactions”, “prevblock” |
| “noncerange” | (string) | a range of valid nonces |
| “sigoplimit” | (numeric) | the limit of sigops in blocks |
| “sizelimit” | (numeric) | the limit of block size |
| “curtime” | (numeric) | current timestamp in seconds since epoch (Jan 1 1970 GMT) |
| “bits” | (string) | the compressed target of the next block |
| “height” | (numeric) | the height of the next block |
./hush-cli getblocktemplate '{"mode":"template","capabilities":["workid"]}'
Response:
{
"capabilities": ["proposal"],
"version": 4,
"previousblockhash": "01499bd2021bb8f74e65712fdeb2a689b12b183eb9e64584d9ea9ebd6e38754e",
"finalsaplingroothash": "3e49b5f954aa9d3545bc6c37744661eea48d7c34e3000d82b7f0010c30f4c2fb",
"transactions": [],
"coinbasetxn": {
"data": "01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff025600ffffffff0200e1f505000000002321039d6cc8a91d6551258a68e9d4bf8e8cfe3defd4be1f9e1c3f341f7a8592772fc8ac80c3c9010000000023210225f1cbbda1a0c406bb8f6dc7a589d88b2f9e28cd4fdb3f59139f8aff1f5d270aacb0918c5c",
"hash": "ac7f63d0df14a996d77a2883e6341615245811b5a8e36a48b7ca8011eb6a149f",
"depends": [],
"fee": 0,
"sigops": 2,
"foundersreward": 30000000,
"coinbasevalue": 100000000,
"required": true
},
"longpollid": "01499bd2021bb8f74e65712fdeb2a689b12b183eb9e64584d9ea9ebd6e38754e7",
"target": "0f0f0f0000000000000000000000000000000000000000000000000000000000",
"mintime": 1552716187,
"mutable": ["time", "transactions", "prevblock"],
"noncerange": "00000000ffffffff",
"sigoplimit": 60000,
"sizelimit": 2000000,
"curtime": 1552716208,
"bits": "200f0f0f",
"height": 6
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblocktemplate", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"capabilities": ["proposal"],
"version": 4,
"previousblockhash": "0c77fb62dcabffd39c0b4ad79da9a51ecc4265158b01ae09d7fd70f93ab7d499",
"transactions": [
{
"data": "010000000d0bf48c25bbb9e5c9cf2959c39ea62266784932a17a8fe1ad190197c398e341870200000048473044022071db2fad2d5bab5f6cf8e2d415fe9cfbc146fc561ce55c379044d5eab7206e1b0220296970cf0265e28a49ac525faef6114386d2ed5c8ea2ced9ccfcd37ca4563bf401ffffffff50aca334345c7b4e7285d883d58efeb74c43e58d4fa61bac21f922a014f292aa1700000048473044022038f17fe42006a3f30ff658f0c8b1495567ffd0dbbe4ba36229df4bcabce201740220516ed6fca4a453f3305b47315d5efd2b230b3a575cb506cb04c89a730a62eade01ffffffff73e2bd82aa10c0bf751d7eabff50209e46827294c2b77932a096f89f7a4aa631210000004847304402200d7f4c2b8a537c98e19f0044d97c0d5ee6afb598d9b4523d586ec39b5be68ed0022071c5587f347bf56b0d1a340e6326c1ec612ee6a77abf5a24e93a446eeaee31af01ffffffffc335b0a285d04766b560bec88c191ed4494bb7e6e964eba1f5ccde3a89ad2e5a0100000049483045022100dce3c8e92b1487bb39681e58634f6414df14bf848b4a0de3ce11e2ddd4b5836202201e8ce810a67fb84350c62e3c5ed28bc1350d754f3a61a3c1a85e824c946fb30801ffffffff2ed2a51a1f8fe7feb456fa21c4ae172733d921c933e0ddc1368cfd9e09a746e5030000004847304402204f2c0eee23e34937b624e8ec4f0221ad3a43787fdbaa5b936ac39d2a3d30d7fe02200fd6e39b0eac4cbd80601f9625b40152e3bad6115f4d1e158b8709aa215778fb01ffffffff31b2c613750303538593437354af923637ee972932d1997fc93bf8d9199ebe905c000000494830450221008c760aef6b34d79e7076b6c249506c91070931f641039f44243e6abf798c731d02203c9a44d0adb04e64956720b4a97b49944825fa704679c21b18679a63c98e99ec01ffffffff0a81b4834feaa5f1044540928290e6d19667ede024923836d94bac13c7c9237914000000494830450221009d8ceb46e48dc0e86e13b0a549efbedc95ca199e1068f8e5e1f31cf4460dee3f022005079476092ac474c42ffae9fcf49fba82f68c94637ea97add61a5b1a147badb01ffffffffd81465cb221c3374a0a69bffc9f2bc225249328c50badd8683c351b2c30fdb171700000048473044022039da2916a77777c77b1a97840d1a888f2b12f0994ad134c8075a0b659884211a022006cbb6c807d1814b88f280e0036306e6d73cc79c0b6ff60966f47161feaccb3e01ffffffff59128ea85b2240d8b781a00b1ad0ebcdd8502d8d3f5722878f963b7f601e1d69020000004847304402203374d06656f35edf5d1b0d16455da2d6f22520a00c948a9c1d6bf51dba7a70ef0220529ec3146e080a637118b891a6b739f58e6f57d2aa3a24759a39eb6696af36ac01ffffffffc7d79714f379e9de8d752861f27d7e4685137dc6db5ad2cd50ec7b36429826d7050000004847304402207a426bb189ac657a9e8b699c67091de8df28306ce67b14653aea561800dfcb1502207e00216a6ff84e3f5b6d82c0683d8ea72a9fd6f636f9b3102b657e09a5f7481501ffffffffd872945ebfef211230ad8147f994892ab45c6cb4710ac29950e40354e1861d78e300000049483045022100af153b219376ffcbef42bd900e678d2504a6acd7c2bf945dcae895a9f07da79702201615016f196ad9452755d9c303fa151c242ed963b5373d148db733482487e8af01ffffffff671edc29af69a848081dd3790afb3fb113377d995e34ea9f219331d5c18c6885ad000000484730440220572ad6110ca5bafd749cfb77740f1aaac35e18c4a814cfb771c5286dd8b1249802207f4a27b90ff91663ee8ec6fc14dae64d16274fd2e35069ac6891de0385740a9801ffffffffba4dc1b3ef20747310640e4e0337c8db570ec63fa62eeffc492098502eaa9a2e5700000049483045022100f3ac3b80a66b6f1e6f96faf15a6535b104fbba987b357732e5b45830841a0a0a02202fee1f97494b2232a32517272d49992612729f4d9f762ede8d9b06ddf294293001ffffffff02f0810100000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac0000000000000000506a4c4da83be8f6e61cb9837708c1a847bdd80b8b8c1e1b9067b338433ca6c663869d004c6e01004345414c00e76cb540d63746c82676637b51e4f9f894c444822844224dd840975c7652dd760e00000000000000",
"hash": "14473b8754bf69cc365784633e1a80787d4f9f950c95c48af0c6a28983c31098",
"depends": [],
"fee": 31200,
"sigops": 1
}
],
"coinbasetxn": {
"data": "01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0503e6590f00ffffffff01a010e311000000002321029400ae04d9c0e3e49b114fc5e0a7e250ece5f5b5b8f1614075ddfd62c67319aeac57a4985b",
"hash": "334b02c0c2fa087862f845fefbd8f6ac4b72e4aed6d024f22b7fa0aa84759006",
"depends": [],
"fee": -93600,
"sigops": 1,
"coinbasevalue": 300000000,
"required": true
},
"longpollid": "0c77fb62dcabffd39c0b4ad79da9a51ecc4265158b01ae09d7fd70f93ab7d499147",
"target": "0000000670be0000000000000000000000000000000000000000000000000000",
"mintime": 1536729888,
"mutable": ["time", "transactions", "prevblock"],
"noncerange": "00000000ffffffff",
"sigoplimit": 20000,
"sizelimit": 2000000,
"curtime": 1536730200,
"bits": "1d0670be",
"height": 1006054
},
"error": null,
"id": "curltest"
}getlocalsolps
The getlocalsolps method returns the average local solutions per second since this node was started.
::: tip
This is the same information shown on the metrics screen (if enabled).
:::
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “data” | (numeric) | the solutions-per-second average |
./hush-cli getlocalsolps
Response:
0.4141607577247555
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getlocalsolps", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": 0.4141607577247555,
"error": null,
"id": "curltest"
}getmininginfo
The getmininginfo method returns a json object containing mining-related information.
| Name | Type | Description |
|---|---|---|
| (none) | (none) |
| Name | Type | Description |
|---|---|---|
| “blocks” | (numeric) | the current block |
| “currentblocksize” | (numeric) | the last block size |
| “currentblocktx” | (numeric) | the last block transaction |
| “difficulty” | (numeric) | the current difficulty |
| “errors”: | ||
| “generate” | (boolean) | if the generation is on or off (see getgenerate or setgenerate calls) |
| “genproclimit” | (numeric) | the processor limit for generation; -1 if no generation (see getgenerate or setgenerate calls) |
| “localsolps” | (numeric) | the average local solution rate (solutions per second) since this node was started |
| “networksolps” | (numeric) | the estimated network solution rate (solutions per second) |
| “pooledtx”: | ||
| “testnet” | (boolean) | if using testnet or not |
| “chain” | (string) | the current network name as defined in BIP70 (main, test, regtest) |
./hush-cli getmininginfo
Response:
{
"blocks": 1007341,
"currentblocksize": 0,
"currentblocktx": 0,
"difficulty": 42918151.0730477,
"errors": "",
"genproclimit": -1,
"localsolps": 0,
"networksolps": 11414148,
"networkhashps": 11414148,
"pooledtx": 5,
"testnet": false,
"chain": "main",
"generate": false,
"numthreads": -1
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getmininginfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"blocks": 1007341,
"currentblocksize": 0,
"currentblocktx": 0,
"difficulty": 42918151.0730477,
"errors": "",
"genproclimit": -1,
"localsolps": 0,
"networksolps": 11414148,
"networkhashps": 11414148,
"pooledtx": 11,
"testnet": false,
"chain": "main",
"generate": false,
"numthreads": -1
},
"error": null,
"id": "curltest"
}getnetworkhashps ( blocks height )
::: warning
DEPRECATED: Use getnetworksolps instead.
:::
The getnetworkhashps method returns the estimated network solutions per second based on the last n blocks.
Pass in blocks value to override the default number of blocks. Passing in -1 will return a value based on the average hashps of the relevant difficulty window.
Pass in height to estimate the network speed at the time when a certain block was found.
| Name | Type | Description |
|---|---|---|
| blocks | (numeric, optional, default=120) | the number of blocks (use -1 to calculate over the relevant difficulty averaging window) |
| height | (numeric, optional, default=-1) | the block height that corresponds to the requested data |
| Name | Type | Description |
|---|---|---|
| data | (numeric) | the solutions-per-second estimate |
./hush-cli getnetworkhashps
Response:
10724120
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getnetworkhashps", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": 10724120,
"error": null,
"id": "curltest"
}getnetworksolps ( blocks height )
The getnetworksolps method returns the estimated network solutions per second based on the last n blocks.
Pass in blocks to override the default number of blocks. Use -1 to calculate according to the relevant difficulty averaging window.
Pass in height to estimate the network speed at the time when a certain block was found.
| Name | Type | Description |
|---|---|---|
| blocks | (numeric, optional, default=120) | the number of blocks; use -1 to calculate according to the relevant difficulty averaging window |
| height | (numeric, optional, default=-1) | the block height that corresponds to the requested data |
| Name | Type | Description |
|---|---|---|
| data | (numeric) | solutions per second, estimated |
./hush-cli getnetworksolps
Response:
17547717
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getnetworksolps", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": 17547717,
"error": null,
"id": "curltest"
}prioritisetransaction “transaction_id” priority_delta fee_delta
The prioritisetransaction method instructs the daemon to accept the indicated transaction into mined blocks at a higher (or lower) priority. The transaction selection algorithm considers the transaction as it would have a higher priority.
::: tip
This method is inherited from the original Bitcoin protocol, of which KMD is a fork (via Zcash). For more examples regarding this method, please see the linked documentation.
:::
| Name | Type | Description |
|---|---|---|
| “transaction_id” | (string, required) | the transaction id |
| priority_delta | (numeric, required) | the priority to add or subtract (if negative). The transaction selection algorithm assigns the tx a higher or lower priority. The transaction priority calculation: coinage * value_in_satoshis / txsize |
| fee_delta | (numeric, required) | the fee value in satoshis to add or subtract (if negative); the fee is not actually paid, only the algorithm for selecting transactions into a block considers the transaction as if it paid a higher (or lower) fee. |
| Name | Type | Description |
|---|---|---|
| true | (boolean) | returns true |
./hush-cli prioritisetransaction "7dc902b280da27cf2dabe41ed6f4d04c828714f289435db193a49341005607eb" 0.0 10000
Response:
true
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "prioritisetransaction", "params": ["7dc902b280da27cf2dabe41ed6f4d04c828714f289435db193a49341005607eb", 0.0, 10000] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": true,
"error": null,
"id": "curltest"
}submitblock “hexdata” ( “jsonparametersobject” )
The submitblock method instructs the daemon to propose a new block to the network.
::: tip
The jsonparametersobject parameter is currently ignored. See the linked documentation for full specification details.
:::
::: tip
Note: for more information on submitblock parameters and results, see the linked documentation .
:::
| Name | Type | Description |
|---|---|---|
| “hexdata” | (string, required) | the hex-encoded block data to submit |
| “jsonparametersobject” : { … } | (string, optional) | object of optional parameters |
| “workid” | (string, sometimes optional) | if the server provides a workid, it MUST be included with submissions |
| Name | Type | Description |
|---|---|---|
| “duplicate” | the node already has a valid copy of the block | |
| “duplicate-invalid” | the node already has the block, but it is invalid | |
| “duplicate-inconclusive” | the node already has the block but has not validated it | |
| “inconclusive” | the node has not validated the block, it may not be on the node’s current best chain | |
| “rejected” | the block was rejected as invalid |
./hush-cli submitblock "0400000029865a4962f43d6f95fdf9ccc89f82377a23d1fdc41eaf943c7881a5ca55c5018973d81f5ce7ab99f027b15c86ca88ec5e4b6f35ad4018bfc2058568bbe7f526000000000000000000000000000000000000000000000000000000000000000097954a5b9e830c1d1600ac305580abea34bda62eb503b02fc4b7872428cfa60bf5824a9b78fc0000fd400500c80d4a8c84cec781a5740d8d3fb18587a850b6380f073cd861c4ce7c4290460c533e0d4dd3b89fe0f0052ccdf9d450a1dfcd7263a39422000378da3eeb621078af689447a5ed0a7265a857463a36d72cdd35910d14de9816a25d631aeb0249ede829aca77f9cce1a2e4a84b75e4bd515845043d52f718638fb41e92d8b18bfe1f49e1c0d23223a285b2850e8469dfbb9782b20c8bebf2a61d7b7d8eea310c7c8d5bfa612bf94fd05562ec8876eacafa0c334a651ef70c941459161b60c20511087d63223878052d4fd1a92298789d7c57609fe3a247489674592e8e34a1728b28e2c2b3165f01d5fefa22e6384f7fe4e566de1741e264f057a0feb1b35d51694647ba52afd71c3bd375b924da95e2b413dbea256a2de9ccddcab88bd2e69cc3acc8a778b4d1db78b41df9fea6d69b071f570f628ad47537d081740a4f2c4fa6666dbb862a6d02ff07b5ae0a9fa24b003fa0355dbde0425d6c14452f0d357f2cfd97960c343ba73789a2d7ba580ea8834ef656a9e79c49fc0f61aa9452a644c8bc06afe31dce2a7ca5d6995adc8ce1f77165a075399e1d006e2bb57c09ffd6e21fcff440645faef599264a3b8c005cf60683371ba1af8847d1992c64e512f13d9d2d364969759233a27c65e1f2f1113cdb665e3e8f7baa2c398c4a2ee85a6ad1bdb095962fafaa01c3d85bc820653544b89b6e75a584d8d04bc77e5284a9ebbcd46c1a6732b841e46c876976805d932a90ac215bcc37801900d49cfb87fe5c809b30ebd8ece38669153c1f1a2438253a56a6507d556cc16b2990f0bd290fea59462d25eebdbfcb78eb403c8080e0c68e8e2ef8f67145121bce83b94dc8f9d0a742752323c5a4b42409ffcc37053c58596deff7981a20e3f412c07c839a341fdc177d5e28f7909696f90c90efff14048f440e7ea3181378f66d35b0697dc02c60154778f438cdd3dba5dc4c2763319498bbb3b8fae17508b073d07d83f5f1dc71bf2dc205f06245872620dfa341dbcdf9c574598c121120e91dd687dfd08451369ab29a11dc73f69d0722992a1c70cf1498ec9b9143fcb0abfd7b1e39189125e8567cb2cc3d71fcdb541a0776a5a665161f98385633153fc9702f079269a1dac0d2c708f5d94e346159858cfd50624ff5a0505358739b5f41adbe739bf75852eebb06eeccd79e030019a5227cd9a19e77b6821ba0794fe09cb074f40ce0b92c081c31cda2d4711d53889fc6f0579839fa74309768ef0a796fa1fa660e150d3ea5c0a369e1297d11177fc284524d6d5e40eb7ee4b400f6dfd6a10402904394e1694de300ddd565622e7ca7ed62970ff5add0b36a513b5d90d2194cf414ecc97e5dcc88698e06405dea09f49503c81cc61518f8aee882da6eeae09b4127a7fcc0c0829fca8fda3502ebf13ece0a90a8dfd05d8e514452247f79472c20683e2b1fde5ec14a2453bf00f9f1cd5a088d229a7fdfdfdc24f176fb9a8a409af70d894998957394d30a46668d71cd16907aa800ee9d96c2b9fc7fb5a7944a9b8d4f76609fc186e3c0a4d80fb9c8c236f76eb00bc24dd9abddef7d653740ece7141ac6175f7e9cab1cb0216e85adde43907b60c0581336b50ccd7682f28f00f7efd663df4d31701141657da989d236d16052c4b59fc46fb41657a26d7074fbc9dee602f7d03b86179e4c12bc0df253f815319dff12353a478d95febd5f902e363734e6e5ef4bf1865eb70750b9238be3382a51ded182569d112f37870d43465615ca9174d41f7f3b9eb780a28c7dba674075bbe04538ad669eef7716d1b7b252d49da3b00993f0c829860a1efafdcdc865d46f2f8aec9893b5bc607db33272e5b9f7cf134595e1ad5e8f34b1b7f93ca181c513afc4d8a531c36929e95cfbb4d268a9d94f80201000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0603860f0e0101ffffffff0188b6e1110000000023210383d0b37f59f4ee5e3e98a47e461c861d49d0d90c80e9e16f7e63686a2dc071f3ac67954a5b01000000010b1561554a46ec535c4972a3a16652b270ee4af847ec3bbfcf6ba663ebcfefcb1a00000049483045022100b9cd7c1c56d69d9b05d695f9ac86c1233427ec26860774a0eb4e6052fe11ca8502207eca5a4eda1ccf92ccdb501ab7d61cf084d0f4431f059e27ee13ce11f9aa159b01ffffffff0188130000000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000"
Response:
duplicate
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "submitblock", "params": ["0400000029865a4962f43d6f95fdf9ccc89f82377a23d1fdc41eaf943c7881a5ca55c5018973d81f5ce7ab99f027b15c86ca88ec5e4b6f35ad4018bfc2058568bbe7f526000000000000000000000000000000000000000000000000000000000000000097954a5b9e830c1d1600ac305580abea34bda62eb503b02fc4b7872428cfa60bf5824a9b78fc0000fd400500c80d4a8c84cec781a5740d8d3fb18587a850b6380f073cd861c4ce7c4290460c533e0d4dd3b89fe0f0052ccdf9d450a1dfcd7263a39422000378da3eeb621078af689447a5ed0a7265a857463a36d72cdd35910d14de9816a25d631aeb0249ede829aca77f9cce1a2e4a84b75e4bd515845043d52f718638fb41e92d8b18bfe1f49e1c0d23223a285b2850e8469dfbb9782b20c8bebf2a61d7b7d8eea310c7c8d5bfa612bf94fd05562ec8876eacafa0c334a651ef70c941459161b60c20511087d63223878052d4fd1a92298789d7c57609fe3a247489674592e8e34a1728b28e2c2b3165f01d5fefa22e6384f7fe4e566de1741e264f057a0feb1b35d51694647ba52afd71c3bd375b924da95e2b413dbea256a2de9ccddcab88bd2e69cc3acc8a778b4d1db78b41df9fea6d69b071f570f628ad47537d081740a4f2c4fa6666dbb862a6d02ff07b5ae0a9fa24b003fa0355dbde0425d6c14452f0d357f2cfd97960c343ba73789a2d7ba580ea8834ef656a9e79c49fc0f61aa9452a644c8bc06afe31dce2a7ca5d6995adc8ce1f77165a075399e1d006e2bb57c09ffd6e21fcff440645faef599264a3b8c005cf60683371ba1af8847d1992c64e512f13d9d2d364969759233a27c65e1f2f1113cdb665e3e8f7baa2c398c4a2ee85a6ad1bdb095962fafaa01c3d85bc820653544b89b6e75a584d8d04bc77e5284a9ebbcd46c1a6732b841e46c876976805d932a90ac215bcc37801900d49cfb87fe5c809b30ebd8ece38669153c1f1a2438253a56a6507d556cc16b2990f0bd290fea59462d25eebdbfcb78eb403c8080e0c68e8e2ef8f67145121bce83b94dc8f9d0a742752323c5a4b42409ffcc37053c58596deff7981a20e3f412c07c839a341fdc177d5e28f7909696f90c90efff14048f440e7ea3181378f66d35b0697dc02c60154778f438cdd3dba5dc4c2763319498bbb3b8fae17508b073d07d83f5f1dc71bf2dc205f06245872620dfa341dbcdf9c574598c121120e91dd687dfd08451369ab29a11dc73f69d0722992a1c70cf1498ec9b9143fcb0abfd7b1e39189125e8567cb2cc3d71fcdb541a0776a5a665161f98385633153fc9702f079269a1dac0d2c708f5d94e346159858cfd50624ff5a0505358739b5f41adbe739bf75852eebb06eeccd79e030019a5227cd9a19e77b6821ba0794fe09cb074f40ce0b92c081c31cda2d4711d53889fc6f0579839fa74309768ef0a796fa1fa660e150d3ea5c0a369e1297d11177fc284524d6d5e40eb7ee4b400f6dfd6a10402904394e1694de300ddd565622e7ca7ed62970ff5add0b36a513b5d90d2194cf414ecc97e5dcc88698e06405dea09f49503c81cc61518f8aee882da6eeae09b4127a7fcc0c0829fca8fda3502ebf13ece0a90a8dfd05d8e514452247f79472c20683e2b1fde5ec14a2453bf00f9f1cd5a088d229a7fdfdfdc24f176fb9a8a409af70d894998957394d30a46668d71cd16907aa800ee9d96c2b9fc7fb5a7944a9b8d4f76609fc186e3c0a4d80fb9c8c236f76eb00bc24dd9abddef7d653740ece7141ac6175f7e9cab1cb0216e85adde43907b60c0581336b50ccd7682f28f00f7efd663df4d31701141657da989d236d16052c4b59fc46fb41657a26d7074fbc9dee602f7d03b86179e4c12bc0df253f815319dff12353a478d95febd5f902e363734e6e5ef4bf1865eb70750b9238be3382a51ded182569d112f37870d43465615ca9174d41f7f3b9eb780a28c7dba674075bbe04538ad669eef7716d1b7b252d49da3b00993f0c829860a1efafdcdc865d46f2f8aec9893b5bc607db33272e5b9f7cf134595e1ad5e8f34b1b7f93ca181c513afc4d8a531c36929e95cfbb4d268a9d94f80201000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0603860f0e0101ffffffff0188b6e1110000000023210383d0b37f59f4ee5e3e98a47e461c861d49d0d90c80e9e16f7e63686a2dc071f3ac67954a5b01000000010b1561554a46ec535c4972a3a16652b270ee4af847ec3bbfcf6ba663ebcfefcb1a00000049483045022100b9cd7c1c56d69d9b05d695f9ac86c1233427ec26860774a0eb4e6052fe11ca8502207eca5a4eda1ccf92ccdb501ab7d61cf084d0f4431f059e27ee13ce11f9aa159b01ffffffff0188130000000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "duplicate",
"error": null,
"id": "curltest"
}
hushd software, and are made available through the hush-cli software.addnode “node” “add|remove|onetry”
The addnode method attempts to add or remove a node from the addnode list, or to make a single attempt to connect to a node.
| Name | Type | Description |
|---|---|---|
| “node” | (string, required) | the node (see getpeerinfo for nodes) |
| “command” | (string, required) | ‘add’ to add a node to the list, ‘remove’ to remove a node from the list, ‘onetry’ to try a connection to the node once |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli addnode "192.168.0.6:8233" "onetry"
Response:
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "addnode", "params": ["192.168.0.6:8233", "onetry"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(none)clearbanned
The clearbanned method clears all banned IPs.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli clearbanned
Response:
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "clearbanned", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(none)disconnectnode “node”
The disconnectnode method instructs the daemon to immediately disconnect from the specified node.
Use getpeerinfo to determine the result.
| Name | Type | Description |
|---|---|---|
| “node” | (string, required) | the node’s address (see getpeerinfo for nodes) |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli disconnectnode "192.168.0.6:8233"
Response:
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "disconnectnode", "params": ["192.168.0.6:8233"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(none)getaddednodeinfo dns ( “node” )
The getaddednodeinfo method returns information about the given added node, or all added nodes.
If dns is set to false, only a list of added nodes is returned. Otherwise, connection information is also provided.
::: tip
Nodes added via onetry are not listed here.
:::
| Name | Type | Description |
|---|---|---|
| dns | (boolean, required) | if false, only a list of added nodes will be provided; otherwise, connection information is also provided |
| “node” | (string, optional) | if provided, the method returns information about this specific node; otherwise, all nodes are returned |
| Name | Type | Description |
|---|---|---|
| “addednode” | (string) | the node ip address |
| “connected” | (boolean) | if connected |
| “addresses” : [ … ] | (array of jsons) | |
| “address” | (string) | the server host and port |
| “connected” | (string) | “connected” accepts two possible values: “inbound” or “outbound” |
./hush-cli getaddednodeinfo true
Response:
[
{
"addednode": "78.47.196.146",
"connected": true,
"addresses": [
{
"address": "78.47.196.146:7770",
"connected": "outbound"
}
]
}
]
Command:
./hush-cli getaddednodeinfo true "78.47.205.239"
Response:
[
{
"addednode": "78.47.205.239",
"connected": true,
"addresses": [
{
"address": "78.47.205.239:7770",
"connected": "outbound"
}
]
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddednodeinfo", "params": [true, "78.47.205.239"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"addednode": "78.47.205.239",
"connected": true,
"addresses": [
{
"address": "78.47.205.239:7770",
"connected": "outbound"
}
]
}
],
"error": null,
"id": "curltest"
}getconnectioncount
The getconnectioncount method returns the number of connections to other nodes.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| n | (numeric) | the connection count |
./hush-cli getconnectioncount
Response:
10
You can find your rpcuser, rpcpassword, and rpcport in the hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getconnectioncount", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": 10,
"error": null,
"id": "curltest"
}getdeprecationinfo
The getdeprecationinfo method returns an object containing current version and deprecation block height.
::: tip
This method is applicable only to the KMD main net.
:::
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “version” | (numeric) | the server version |
| “subversion” | (string) | the server sub-version string (i.e. “/MagicBean:x.y.z[-v]/”) |
| “deprecationheight” | (numeric) | the block height at which this version will deprecate and shut down (unless disabledeprecation is set) |
./hush-cli getdeprecationinfo
Response:
{
"version": 1001550,
"subversion": "/MagicBean:1.0.15/",
"deprecationheight": 1400000
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getdeprecationinfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"version": 1001550,
"subversion": "/MagicBean:1.0.15/",
"deprecationheight": 1400000
},
"error": null,
"id": "curltest"
}getnettotals
The getnettotals method returns information about network traffic, including bytes in, bytes out, and current time.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “totalbytesrecv” | (numeric) | total bytes received |
| “totalbytessent” | (numeric) | total bytes sent |
| “timemillis” | (numeric) | total cpu time |
./hush-cli getnettotals
Response:
{
"totalbytesrecv": 29853501,
"totalbytessent": 15589555,
"timemillis": 1536821874559
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getnettotals", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"totalbytesrecv": 29872297,
"totalbytessent": 15650741,
"timemillis": 1536821938902
},
"error": null,
"id": "curltest"
}getnetworkinfo
The getnetworkinfo method returns an object containing various state info regarding p2p networking.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “version” | (numeric) | the server version |
| “subversion” | (string) | the server subversion string (i.e. “/MagicBean:x.y.z[-v]/”) |
| “protocolversion” | (numeric) | the protocol version |
| “localservices” | (string) | the services we offer to the network |
| “timeoffset” | (numeric) | the time offset |
| “connections” | (numeric) | the number of connections |
| “networks”: [ … ] | (array of jsons) | information per network |
| “name” | (string) | network (ipv4, ipv6 or onion) |
| “limited” | (boolean) | whether the network is limited using -onlynet |
| “reachable” | (boolean) | whether the network is reachable |
| “proxy” | (string) | (submitted as “host:port”) the proxy that is used for this network, or empty if none |
| “relayfee” | (numeric) | minimum relay fee for non-free transactions in COIN/kB |
| “localaddresses”: [ … ] | (array of jsons) | list of local addresses |
| “address” | (string) | network address |
| “port” | (numeric) | network port |
| “score” | (numeric) | relative score |
| “warnings” | (string) | any network warnings (such as alert messages) |
./hush-cli getnetworkinfo
Response:
{
"version": 1001550,
"subversion": "/MagicBean:1.0.15/",
"protocolversion": 170003,
"localservices": "0000000000000001",
"timeoffset": -1,
"connections": 10,
"networks": [
{
"name": "ipv4",
"limited": false,
"reachable": true,
"proxy": "",
"proxy_randomize_credentials": false
},
{
"name": "ipv6",
"limited": false,
"reachable": true,
"proxy": "",
"proxy_randomize_credentials": false
},
{
"name": "onion",
"limited": true,
"reachable": false,
"proxy": "",
"proxy_randomize_credentials": false
}
],
"relayfee": 0.000001,
"localaddresses": [],
"warnings": ""
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getnetworkinfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"version": 1001550,
"subversion": "/MagicBean:1.0.15/",
"protocolversion": 170003,
"localservices": "0000000000000001",
"timeoffset": -1,
"connections": 10,
"networks": [
{
"name": "ipv4",
"limited": false,
"reachable": true,
"proxy": "",
"proxy_randomize_credentials": false
},
{
"name": "ipv6",
"limited": false,
"reachable": true,
"proxy": "",
"proxy_randomize_credentials": false
},
{
"name": "onion",
"limited": true,
"reachable": false,
"proxy": "",
"proxy_randomize_credentials": false
}
],
"relayfee": 1e-6,
"localaddresses": [],
"warnings": ""
},
"error": null,
"id": "curltest"
}getpeerinfo
The getpeerinfo method returns data about each connected network node as a json array of objects.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “id” | (numeric) | peer index |
| “addr”:, | (string) | the ip address and port of the peer (“host:port”) |
| “addrlocal” | (string) | local address (“ip:port”) |
| “services” | (string) | the services offered |
| “lastsend” | (numeric) | the time in seconds since epoch (Jan 1 1970 GMT) of the last send |
| “lastrecv” | (numeric) | the time in seconds since epoch (Jan 1 1970 GMT) of the last receive |
| “bytessent” | (numeric) | the total bytes sent |
| “bytesrecv” | (numeric) | the total bytes received |
| “conntime” | (numeric) | the connection time in seconds since epoch (Jan 1 1970 GMT) |
| “timeoffset” | (numeric) | the time offset in seconds |
| “pingtime” | (numeric) | ping time |
| “pingwait” | (numeric) | ping wait |
| “version” | (numeric) | the peer version, such as 170002 |
| “subver” | (string) | the string version (i.e. “/MagicBean:x.y.z[-v]/”) |
| “inbound” | (boolean) | inbound (true) or outbound (false) |
| “startingheight” | (numeric) | the starting height (block) of the peer |
| “banscore” | (numeric) | the ban score |
| “synced_headers” | (numeric) | the last header we have in common with this peer |
| “synced_blocks” | (numeric) | the last block we have in common with this peer |
| “inflight”: [ … ] | (array) | |
| number | (numeric) | the block height requested from this peer |
./hush-cli getpeerinfo
Response:
[
{
"id": 1,
"addr": "78.47.196.146:7770",
"addrlocal": "69.178.104.172:49724",
"services": "0000000000000001",
"lastsend": 1536827621,
"lastrecv": 1536827617,
"bytessent": 5181633,
"bytesrecv": 6245958,
"conntime": 1536792412,
"timeoffset": -2,
"pingtime": 0.234065,
"version": 170003,
"subver": "/MagicBean:1.0.15/",
"inbound": false,
"startingheight": 1007074,
"banscore": 45,
"synced_headers": 1007671,
"synced_blocks": 1007671,
"inflight": [],
"whitelisted": false
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getpeerinfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"id": 1,
"addr": "78.47.196.146:7770",
"addrlocal": "69.178.104.172:49724",
"services": "0000000000000001",
"lastsend": 1536827702,
"lastrecv": 1536827698,
"bytessent": 5195639,
"bytesrecv": 6247781,
"conntime": 1536792412,
"timeoffset": -2,
"pingtime": 0.234605,
"version": 170003,
"subver": "/MagicBean:1.0.15/",
"inbound": false,
"startingheight": 1007074,
"banscore": 45,
"synced_headers": 1007672,
"synced_blocks": 1007672,
"inflight": [],
"whitelisted": false
}
],
"error": null,
"id": "curltest"
}listbanned
The listbanned method lists all banned IP addresses and subnets.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the address/subnet that is banned |
| “banned_until” | (numeric) | the timestamp, at which point the ban will be removed |
./hush-cli listbanned
Response:
[
{
"address": "78.47.205.239/255.255.255.255",
"banned_until": 1536945306
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "listbanned", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"address": "78.47.205.239/255.255.255.255",
"banned_until": 1536945306
}
],
"error": null,
"id": "curltest"
}ping
The ping method requests that a ping be sent to all other nodes, to measure ping time.
Results provided in getpeerinfo, pingtime and pingwait fields are decimal seconds.
The ping command is handled in queue with all other commands, so it measures processing backlog, not just network ping.
::: tip
Use getpeerinfo to see ping results.
:::
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli ping
Response:
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "ping", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": null,
"error": null,
"id": "curltest"
}setban “ip(/netmask)” “add|remove” (bantime) (absolute)
The setban method attempts to add or remove an IP address (and subnet, if indicated) from the banned list.
| Name | Type | Description |
|---|---|---|
| “ip(/netmask)” | (string, ip required) | the IP/subnet (see getpeerinfo for nodes ip) with an optional netmask (default is /32 = single ip) |
| “command” | (string, required) | use “add” to add an IP/subnet to the list, or “remove” to remove an IP/subnet from the list |
| bantime | (numeric, optional) | indicates how long (in seconds) the ip is banned (or until when, if [absolute] is set). 0 or empty means the ban is using the default time of 24h, which can also be overwritten using the -bantime runtime parameter. |
| absolute | (boolean, optional) | if set to true, the bantime must be an absolute timestamp (in seconds) since epoch (Jan 1 1970 GMT) |
| Name | Type | Description |
|---|---|---|
| (none) |
::: tip
Use listbanned to view results.
:::
./hush-cli setban "192.168.0.6" "add" 86400
Response:
(none)
Command:
./hush-cli setban "192.168.0.0/24" "add"
Response:
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "setban", "params": ["78.47.205.239", "add", 86400] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(none)
hushd software, and are made available through the hush-cli software.createrawtransaction ‘[{ “txid”: “id_string”, “vout”: number }, … ]’ ‘{ “address”: amount, … }’
The createrawtransaction method creates a transaction, spending the given inputs and sending to the given addresses. The method returns a hex-encoded raw transaction.
::: tip
This is a raw transaction, and therefore the inputs are not signed and the transaction is not stored in the wallet nor transmitted to the network.
:::
| Name | Type | Description |
|---|---|---|
| “transactions” | (string, required) | a json array of json objects |
| “txid” | (string, required) | the transaction id |
| “vout” | (numeric, required) | the output number |
| “addresses” | (string, required) | a json object with addresses as keys and amounts as values |
| “address” | (numeric, required) | the key is the address, the value is the COIN amount |
| Name | Type | Description |
|---|---|---|
| “transaction” | (string) | a hex string of the transaction |
./hush-cli createrawtransaction '[{"txid":"9f44dc664882198b14e9a8c466d466efcdd070ccb6f57be8e2884aa11e7b2a30","vout":0}]' '{"RHCXHfXCZQpbUbihNHh5gTwfr7NXmJXmHi":0.01}'
Response:
0100000001302a7b1ea14a88e2e87bf5b6cc70d0cdef66d466c4a8e9148b19824866dc449f0000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000
You can find your rpcuser, rpcpassword, and rpcport in hush2.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "createrawtransaction", "params": [[{"txid":"9f44dc664882198b14e9a8c466d466efcdd070ccb6f57be8e2884aa11e7b2a30","vout":0}], {"RHCXHfXCZQpbUbihNHh5gTwfr7NXmJXmHi":0.01} ]}' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "0100000001302a7b1ea14a88e2e87bf5b6cc70d0cdef66d466c4a8e9148b19824866dc449f0000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000",
"error": null,
"id": "curltest"
}decoderawtransaction “hexstring”
The decoderawtransaction method returns a json object representing the serialized, hex-encoded transaction.
| Name | Type | Description |
|---|---|---|
| “hex” | (string, required) | the transaction hex string |
| Name | Type | Description |
|---|---|---|
| “txid” | (string) | the transaction id |
| “overwintered” | (boolean) | the overwintered flag |
| “version” | (numeric) | the version |
| “versiongroupid” | (string, optional) | the version group id (overwintered txs) |
| “locktime” | (numeric) | the lock time |
| “expiryheight” | (numeric, optional) | last valid block height for mining transaction (overwintered txs) |
| “vin” : [ … ] | (array of json objects) | |
| “txid” | (string) | the transaction id |
| “vout” : [ … ] | (numeric) | the output number |
| “scriptSig” | (json object) | the script |
| “asm” | (string) | asm |
| “hex” | (string) | hex |
| “sequence” | (numeric) | the script sequence number |
| “vout” | (array of json objects) | |
| “value” | (numeric) | the value |
| “number” | (numeric) | index |
| “scriptPubKey” | (json object) | |
| “asm” | (string) | the asm |
| “hex” | (string) | the hex |
| “reqSigs” | (numeric) | the required sigs |
| “type” | (string) | the type, eg ‘pubkeyhash’ |
| “addresses” | ||
| “address” | (string) | the address |
| “vjoinsplit” : [ … ] | (array of json objects, only for version >= 2) | |
| “vpub_old” | (numeric) | public input value |
| “vpub_new” | (numeric) | public output value |
| “anchor” | (string) | the anchor |
| “nullifiers” : [ … ] | (array of strings) | |
| “hex” | (string) | input note nullifier |
| “commitments” : [ … ] | (array of strings) | |
| “hex” | (string) | output note commitment |
| “onetimePubKey” | (string) | the onetime public key used to encrypt the ciphertexts |
| “randomSeed” | (string) | the random seed |
| “macs” : [ … ] | (array of strings) | |
| “hex” | (string) | input note MAC |
| “proof” | (string) | the zero-knowledge proof |
| “ciphertexts” : [ … ] | (array of strings) | |
| “hex” | (string) | output note ciphertext |
./hush-cli decoderawtransaction "0100000001302a7b1ea14a88e2e87bf5b6cc70d0cdef66d466c4a8e9148b19824866dc449f0000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"
Response:
{
"txid": "bdb537d0a0588eb63e696d5f6e5cdc7bda071fe39327c680f42e8c3af6719df1",
"size": 85,
"version": 1,
"locktime": 0,
"vin": [
{
"txid": "9f44dc664882198b14e9a8c466d466efcdd070ccb6f57be8e2884aa11e7b2a30",
"vout": 0,
"scriptSig": {
"asm": "",
"hex": ""
},
"sequence": 4294967295
}
],
"vout": [
{
"value": 0.01,
"valueSat": 1000000,
"n": 0,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 56def632e67aa11c25ac16a0ee52893c2e5a2b6a OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": ["RHCXHfXCZQpbUbihNHh5gTwfr7NXmJXmHi"]
}
}
],
"vjoinsplit": []
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "decoderawtransaction", "params": ["0100000001302a7b1ea14a88e2e87bf5b6cc70d0cdef66d466c4a8e9148b19824866dc449f0000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"txid": "bdb537d0a0588eb63e696d5f6e5cdc7bda071fe39327c680f42e8c3af6719df1",
"size": 85,
"version": 1,
"locktime": 0,
"vin": [
{
"txid": "9f44dc664882198b14e9a8c466d466efcdd070ccb6f57be8e2884aa11e7b2a30",
"vout": 0,
"scriptSig": {
"asm": "",
"hex": ""
},
"sequence": 4294967295
}
],
"vout": [
{
"value": 0.01,
"valueSat": 1000000,
"n": 0,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 56def632e67aa11c25ac16a0ee52893c2e5a2b6a OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": ["RHCXHfXCZQpbUbihNHh5gTwfr7NXmJXmHi"]
}
}
],
"vjoinsplit": []
},
"error": null,
"id": "curltest"
}decodescript “hex”
The decodescript method decodes a hex-encoded script.
| Name | Type | Description |
|---|---|---|
| “hex” | (string) | the hex encoded script |
| Name | Type | Description |
|---|---|---|
| “asm” | (string) | the script public key |
| “hex” | (string) | the hex-encoded public key |
| “type” | (string) | the output type |
| “reqSigs” | (numeric) | the required signatures |
| “addresses”: [ … ] | (array of strings) | |
| “address” | (string) | the address |
| “p2sh” | (string) | the script address |
./hush-cli decodescript "0100000001302a7b1ea14a88e2e87bf5b6cc70d0cdef66d466c4a8e9148b19824866dc449f0000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"
Response:
{
"asm": "0 0 0 48 7b1ea14a88e2e87bf5b6cc70d0cdef66d466c4a8e9148b19824866dc449f0000000000ffffffff014042 00000000001976a91456def632e67a OP_LESSTHANOREQUAL [error]",
"type": "nonstandard",
"p2sh": "bQXGP7b2uRaWbMGkLaJat9LisWr8ZMGLbs"
}
You can find your rpcuser, rpcpassword, and rpcport in the hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "decodescript", "params": ["0100000001302a7b1ea14a88e2e87bf5b6cc70d0cdef66d466c4a8e9148b19824866dc449f0000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"asm": "0 0 0 48 7b1ea14a88e2e87bf5b6cc70d0cdef66d466c4a8e9148b19824866dc449f0000000000ffffffff014042 00000000001976a91456def632e67a OP_LESSTHANOREQUAL [error]",
"type": "nonstandard",
"p2sh": "bQXGP7b2uRaWbMGkLaJat9LisWr8ZMGLbs"
},
"error": null,
"id": "curltest"
}fundrawtransaction “hexstring”
The fundrawtransaction method adds inputs to a transaction until it has enough in value to meet its out value. This will not modify existing inputs, and will add one change output to the outputs.
::: tip
Inputs which were signed may need to be resigned after completion since in/outputs have been added. To sign the inputs added, use signrawtransaction.
:::
::: tip
This method comes from the BTC codebase, of which KMD is ultimately a fork (via Zcash). For full details, please see https://bitcoin.org/en/developer-reference#fundrawtransaction">the linked documentation</a>.
:::
| Name | Type | Description |
|---|---|---|
| “hexstring” | (string, required) | the hex string of the raw transaction |
| Name | Type | Description |
|---|---|---|
| “hex” | (string) | the resulting raw transaction (hex-encoded string) |
| “fee” | (numeric) | the fee added to the transaction |
| “changepos” | (numeric) | the position of the added change output, or -1 |
Create a transaction with no inputs:
Command:./hush-cli createrawtransaction "[]" '{"RHCXHfXCZQpbUbihNHh5gTwfr7NXmJXmHi":0.01}'
Response:
01000000000140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000
Add sufficient unsigned inputs to meet the output value:
Command:./hush-cli fundrawtransaction "rawtransactionhex"
Response:
{
"hex": "01000000660aeb1fef3f0f6e8e9598a2f4b434466b5ccb95e49aa7c4286bc5392d43fa1f280000000000feffffff0d204965060600f1e79bfd183e7ee1b5b9b61c6379d6c95984cb7cdf79231c4c0000000000feffffff0d3eba8ce5b6b6ee7d2e804be57dbe4544d7b7169caf5afd6f207c1275e8977e0000000000feffffff04f8b24c1eb3aeb01cc483a5b6922eb341da17fd42c944b0bb18998c04fea67e0000000000feffffff0360b074597abb6e32c319078ea5f83cdfc85d5c892c0388893d8b66876c077b0000000000feffffff0e2ae757c446029f5dbea36926883744a2d3fe8ee05381c2b4311e7d58057fd40000000000feffffff149c5bbedff321a7810d5db264829ffa5529a4f29ca3a452b0543736339bf0260000000000feffffff1f9e6624bb5185f0b51d36a3a94982f0d8a325bdf81db90bf67945354a6f40c60000000000feffffff22e752f465434c0563a7e0b9d104b8633bdbd6073bbe61d17dee0d53ac8220430000000000feffffff2780816ab4fd0177dfff1a98b7783bbefe8d08f339c964d2438b7e73c8ce614c0000000000feffffff2da12ef31d8678120d4961c9090035ae9e8f48dcfe4e2f461fb10437473c2bc90000000000feffffff39a00efcf7f678ecf0252ee2b4998a43121aaad28abe518be06a830fd34ae24e0000000000feffffff3c5b78d98b3edf510b003cc5723270854313d51ad40859ba08a622f3a269a6690000000000feffffff3ca10423750150708e817fe0020a7fd0a687a0456158db659af112dfefefa2990000000000feffffff4005c2dd439c35e3f04384142b66871e15a72149218d66be2ca3b13f7e1604b00000000000feffffff408d53f3499c6db833b4a9b19aa8cf61c95182775a0539efef9c62a0456520c40000000000feffffff43671a7bd5f31ee1642842027378035d73b06d446fbb1666e95638eb0d55d1c90000000000feffffff45ee4a5c7a98f315d26c1020b26576500ecae4d6a6a78b3ad169788006e7c76c0000000000feffffff48244290df0dccc781e7d081c731081c2e7e022176cc7b4b31fd92c1e31d970e0000000000feffffff48c28c27f8303266e0547b8c453b9823baed7a9e06105c09ba4cf65cb2bd5d2b0000000000feffffff4b28d567f5933d5992559fb19f90115b145db32bd1b6e52d309021da8e6063cc0000000000feffffff4d45006be4acc1bf5c69722cb744b967e615d2d35014fc82cf61c2a4905717a50000000000feffffff4d8540fa9e580b140359e0a17aac6415ca80072f9ba26fc2b43914092f4702400000000000feffffff4ff26de89311f83d65a3936e06937f30a75dd50594246d910035bcbe19c0ea6a0000000000feffffff511e169a83c0c0f8ee7163c34fa0e3b024275892419f11a2bb96d4976d3f9b470000000000feffffff52325adf85f74f38f467bc3a99657f322988add8aebb371bd080088efb95836f0000000000feffffff532ff452f8423507348c542063deb6f257de711237ff8d718143358128e2c6470000000000feffffff5b0d6fe54dce0515e6947f5170478cabb06d1e855365a6b7dbb0118c4450ff0b0000000000feffffff5b7db5b32a8e8e8c6307a7d0afec7062637eec39670f1afb08f0b04a50fbc4740000000000feffffff5cbecf874fd1996cd4e49cd41c98a586c533eac1ebc37df92cf5a9545203f9350000000000feffffff5d015b907e23b9c5e00907013f66d258fab2f016842f0c8e69346d72b0221dd70000000000feffffff65c461a04f571b50ab4fe3e367952bfba755eec9b6ed23cb460ab3bdc873fff80000000000feffffff686da3cbb1a1af26c2c01793345a5fb8ee47829aa907ab95b8144fbeda1707920000000000feffffff6896423421d7e1193a7b88d2fbf1eef1c46f637e7a49217c171a18852d29e8d60000000000feffffff6a0f6f77ae1d42dc96c39c620f401f32c9774f18f1a039e97b4b405b8aaa757d0000000000feffffff6cfa0bcd2e2689498496dc4b15feb0fc535667a88005f2c88198265bb1f8f3d80000000000feffffff705456a54cb0b94ec15890bd957dd778581f606270a331ad5b15ef48684a5fc40000000000feffffff718076a7dd771121e817b98e98f46c7f52722d6cdfca9130203fe5965f0a3c000000000000feffffff780ed86aeead9747bc96bf7053b02ada6ac566481763e70c29d3d00162bc7b530000000000feffffff7b3ad2352be9169286629dcf064fa769c23a8aabd468c30eec35a0c79b61f1f80000000000feffffff7fc4676bc415a467bd10d303eacd54617acfb6876945e3bf1217dfd208c6d58d0000000000feffffff80fe96eb05e5fcf89fa7e19b1a653e0b8164cba383e2d2ff5934a61c42698cb10000000000feffffff875ea454109c4725766d372f0fe395dd4744737378b3a246094dc0db7fb6e95f0000000000feffffff87b7c1fd810834fdd892975a795b9e6c1b1aa398436ae3ecb19bce62ac11aa4e0000000000feffffff88b22fca9de29db1901e9c8accbf1caf8fd4d5a37802b3bf5142038809ee3c690000000000feffffff89e4b0f44e022cf53736520aef84a324100f19f4f0862c9d2150b686e951d3740000000000feffffff8e0611807aa639621ca6be13a2eda8d98c32867041f929dbbef7742c7c867db00000000000feffffff8e77d64182b666e50377b3c9a39395735a89d2c90f5ff62024143f2c25ea51d50000000000feffffff8fe0b55ad0e150fbfe8d263c44527b967c44fd79ebbe88a09a91a4318f1c17c40000000000feffffff91ad86b51f541d480383681c4faa26575f723154ed6e39cb76e03317c8984c610000000000feffffff927673288f7c95f452e035b65c8cd46a57e58451b93dcfecfae0c33f00b4e5350000000000feffffff9477cc8e7dddfa7d183bfe0771def3778e7b2641996a3ea52f42d085d4007d190000000000feffffff948a1e5af04f265b29fd23700d1ac9926b5bed71ed5b2968f29abaa15036848c0000000000feffffff98a1cd6c74d9d42f88032e74182cfe8e71f125eb7eb1b49e8334d5b17bf4d07e0000000000feffffff9a7fefd1b1409dfc23d6be09dab5692cd9f6c59c98b2d7b0231f40b396999c2b0000000000feffffff9b0ed42c0446f8ea3c19b47be97f42d1a546bbd6a5a311cded5c1dd16c3606d40000000000feffffff9ba78bb678f5b7a289ca37b49835bc6ad383e2089dd3711833383c0c6e6d40cb0000000000feffffff9d2bdc85ec46fb0457dd41f02f5f7b203ff8c844062f3376c7f86cf2144dc6a60000000000feffffff9dc64c498135ebd6c025d7d43ae71120d6477bcbcd9828aebe21911ea21655c80000000000feffffffa0c3203666c02ea6f958408c8f2241b4d6e3a8beb9ab54736fe73621feb57ce40000000000feffffffa14e8b18777a8710e58942b56d094243151299f033cc21bb3ad3dfce2b3e77ad0000000000feffffffa262a97a28944d41d47c7f8788528c797d322f7abc0390c20bf22e3b835e127a0000000000feffffffaa3c2496b8237d865f81ff0bb8eb01bf2b69ee806463816ec83b60cace7a58330000000000feffffffabfc5cf05834234e1ee8a3c87c8de5d6a07f9530a09f2b34d9303ef30d8646cf0000000000feffffffa2d1512943366ab64e6d1749b81f993e830e5b546a87b9bd68fe0c5c865da9530100000000feffffffad976a10bc9ebe391cee6b83191520a9d0fb62a24e969477a4cc6dd26b29e4da0000000000feffffffadd486a6d94629b19713d723301b135c11af92b5ed69e6f0b9ed07d417078b240000000000feffffffb04574d6517ca90a26e07a749ebcde23f67f7ef8a594b23e699fa084529d96e80000000000feffffffb2197245ddc53b189c18d05d167210fd6291c6b9116862144c3654da5bb55d060000000000feffffffb4b953583df750085d727027674f69c6ba63513915941e42924a462d5bc15c9b0000000000feffffffb7f5149ac38efb591ad8c3a46ec9e979d5647c964190a135342435b55484dd570000000000feffffffbfc02225e0c5351bbeb63adb8e3b7859752363a5b85f5b2a6da5240a449e80650000000000feffffffc0def09bb3cbf791c52764cceadd389199be9d7603cc3d6d213ba45ffc98518d0000000000feffffffc5c9957c3a3e03204e603c313368d3c01206320beddfd28b850fd17b09a61a410000000000feffffffc64396e634d716a5ae280d9fd821507239d7b25a812eea6751254e462c8a73a50000000000feffffffc69c9cdd6825a657be1a06008f73b78cf185a9d195ba771451ca1ec09ce54d4f0000000000feffffffca6112fdc1db1a441961f6eb62b492c1397732cc5519d40f6aa335612f42d39c0000000000feffffffcb15dbc245dec1ef8cb8e25ef11921ca804c023e6ad803ebcb2a7b98380b60b30000000000feffffffcfe47e6ce0780c4594a2d1b76a2906c0a9ea32d39a73c244aa9d5d8dea67248c0000000000feffffffd0a4d502c22cea7da0d1a3cf99aef598b74fad19a6de35f21c6fd0d1b8cf27560000000000feffffffd25452b8575cafca10255179f95c8c66e255329220b7ff645af522af7b8038320000000000feffffffd3922dfd1a65216bbcd4646d0cbcfa70cfe587775cf4c673043c57061f48d7630000000000feffffffd75c777645d534009bc8e7b2c0b58a78cd63f41f47f6cd30868aeaf9b55e47700000000000feffffffd8f837530faf0d9b50efe1d79aed453b11916d565a2b9c40a380a85f0be2af6b0000000000feffffffdbce76e284668c829366dafd00ae4884ea39b2aa597cc1b4d2a37991a9b2ea560000000000feffffffe481d9493d67997104c12972b7c8a73fb87b16e228665bb784436fc0f58d7e660000000000feffffffe7a22d3d87255e4adaab9a6fd8a72320299a6902426424aa8b2b89b7c3b0c0950000000000feffffffe80ac9635b6bd91c1935eca6df80876ac8cdc87a2b91e925cfdcc0f06059b2e50000000000feffffffedad3357a1a9aeeb8c2771cc6f284db92a2aa31f458e35bb270216015bb0edd40000000000feffffffee85afefc31a99a4616bfb228e1f48691976b900ecdfe838e1310bf5b33fadcf0000000000fefffffff13e4784de0564595f3b4cce57ec0d8a4b72a798feb65f5fbca5b26a3a91d0760000000000fefffffff205212771fd3ca5a68340fa307810e44315ae02464b5d8a235ba6bca691bd710000000000fefffffff31cea9351fddc36393fa996962e204c461a34ff1c6ad243b3a4902440f165da0000000000fefffffff3c67e78777cc42ae2834bcf5dce5493fbcfcc6e0aabd7608cf4f9c936a37f490000000000fefffffff3ddc14df664f6e4f59b1f1e25241a61fc69f13125ea5a67edbd03b37d332eb50000000000fefffffff614bd5d83278ad95d8c5bf6fefe59b3675e832cc1c2349d7952aa734fd202830000000000fefffffff67ef42d75fc5d36ff32ab40f5c9f88f279a1173ee1db227a4706aa0480d66ab0000000000fefffffff69f0798ab6de485dcfe72391f4cbb1e5f4d39ee8f852b80fd4bb730eabd8e930000000000fefffffff8dd75e7c674cf7bf15f42fcb1256ef4f16b96e0ff6a359bc24c07ba734f09a30000000000fefffffffa0c47583d4c6f18e12b93764ccf57d2430a52bdd0ceb611924a79c82daf48b90000000000fefffffffa5ca0440f302bcf118946714dba6e81036e48477ff3a315084fe682aea6d1d50000000000fefffffffef369694bf0493161762e49d7ca16f1ba600250d801a848d0ca8d3f2d677d4a0000000000feffffff02c5490f00000000001976a9146843838a0aa11686cd0c01fbf470c9c5f302249488ac40420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000",
"changepos": 0,
"fee": 0.0001174
}
Sign the transaction:
Command:./hush-cli signrawtransaction "01000000660aeb1fef3f0f6e8e9598a2f4b434466b5ccb95e49aa7c4286bc5392d43fa1f280000000000feffffff0d204965060600f1e79bfd183e7ee1b5b9b61c6379d6c95984cb7cdf79231c4c0000000000feffffff0d3eba8ce5b6b6ee7d2e804be57dbe4544d7b7169caf5afd6f207c1275e8977e0000000000feffffff04f8b24c1eb3aeb01cc483a5b6922eb341da17fd42c944b0bb18998c04fea67e0000000000feffffff0360b074597abb6e32c319078ea5f83cdfc85d5c892c0388893d8b66876c077b0000000000feffffff0e2ae757c446029f5dbea36926883744a2d3fe8ee05381c2b4311e7d58057fd40000000000feffffff149c5bbedff321a7810d5db264829ffa5529a4f29ca3a452b0543736339bf0260000000000feffffff1f9e6624bb5185f0b51d36a3a94982f0d8a325bdf81db90bf67945354a6f40c60000000000feffffff22e752f465434c0563a7e0b9d104b8633bdbd6073bbe61d17dee0d53ac8220430000000000feffffff2780816ab4fd0177dfff1a98b7783bbefe8d08f339c964d2438b7e73c8ce614c0000000000feffffff2da12ef31d8678120d4961c9090035ae9e8f48dcfe4e2f461fb10437473c2bc90000000000feffffff39a00efcf7f678ecf0252ee2b4998a43121aaad28abe518be06a830fd34ae24e0000000000feffffff3c5b78d98b3edf510b003cc5723270854313d51ad40859ba08a622f3a269a6690000000000feffffff3ca10423750150708e817fe0020a7fd0a687a0456158db659af112dfefefa2990000000000feffffff4005c2dd439c35e3f04384142b66871e15a72149218d66be2ca3b13f7e1604b00000000000feffffff408d53f3499c6db833b4a9b19aa8cf61c95182775a0539efef9c62a0456520c40000000000feffffff43671a7bd5f31ee1642842027378035d73b06d446fbb1666e95638eb0d55d1c90000000000feffffff45ee4a5c7a98f315d26c1020b26576500ecae4d6a6a78b3ad169788006e7c76c0000000000feffffff48244290df0dccc781e7d081c731081c2e7e022176cc7b4b31fd92c1e31d970e0000000000feffffff48c28c27f8303266e0547b8c453b9823baed7a9e06105c09ba4cf65cb2bd5d2b0000000000feffffff4b28d567f5933d5992559fb19f90115b145db32bd1b6e52d309021da8e6063cc0000000000feffffff4d45006be4acc1bf5c69722cb744b967e615d2d35014fc82cf61c2a4905717a50000000000feffffff4d8540fa9e580b140359e0a17aac6415ca80072f9ba26fc2b43914092f4702400000000000feffffff4ff26de89311f83d65a3936e06937f30a75dd50594246d910035bcbe19c0ea6a0000000000feffffff511e169a83c0c0f8ee7163c34fa0e3b024275892419f11a2bb96d4976d3f9b470000000000feffffff52325adf85f74f38f467bc3a99657f322988add8aebb371bd080088efb95836f0000000000feffffff532ff452f8423507348c542063deb6f257de711237ff8d718143358128e2c6470000000000feffffff5b0d6fe54dce0515e6947f5170478cabb06d1e855365a6b7dbb0118c4450ff0b0000000000feffffff5b7db5b32a8e8e8c6307a7d0afec7062637eec39670f1afb08f0b04a50fbc4740000000000feffffff5cbecf874fd1996cd4e49cd41c98a586c533eac1ebc37df92cf5a9545203f9350000000000feffffff5d015b907e23b9c5e00907013f66d258fab2f016842f0c8e69346d72b0221dd70000000000feffffff65c461a04f571b50ab4fe3e367952bfba755eec9b6ed23cb460ab3bdc873fff80000000000feffffff686da3cbb1a1af26c2c01793345a5fb8ee47829aa907ab95b8144fbeda1707920000000000feffffff6896423421d7e1193a7b88d2fbf1eef1c46f637e7a49217c171a18852d29e8d60000000000feffffff6a0f6f77ae1d42dc96c39c620f401f32c9774f18f1a039e97b4b405b8aaa757d0000000000feffffff6cfa0bcd2e2689498496dc4b15feb0fc535667a88005f2c88198265bb1f8f3d80000000000feffffff705456a54cb0b94ec15890bd957dd778581f606270a331ad5b15ef48684a5fc40000000000feffffff718076a7dd771121e817b98e98f46c7f52722d6cdfca9130203fe5965f0a3c000000000000feffffff780ed86aeead9747bc96bf7053b02ada6ac566481763e70c29d3d00162bc7b530000000000feffffff7b3ad2352be9169286629dcf064fa769c23a8aabd468c30eec35a0c79b61f1f80000000000feffffff7fc4676bc415a467bd10d303eacd54617acfb6876945e3bf1217dfd208c6d58d0000000000feffffff80fe96eb05e5fcf89fa7e19b1a653e0b8164cba383e2d2ff5934a61c42698cb10000000000feffffff875ea454109c4725766d372f0fe395dd4744737378b3a246094dc0db7fb6e95f0000000000feffffff87b7c1fd810834fdd892975a795b9e6c1b1aa398436ae3ecb19bce62ac11aa4e0000000000feffffff88b22fca9de29db1901e9c8accbf1caf8fd4d5a37802b3bf5142038809ee3c690000000000feffffff89e4b0f44e022cf53736520aef84a324100f19f4f0862c9d2150b686e951d3740000000000feffffff8e0611807aa639621ca6be13a2eda8d98c32867041f929dbbef7742c7c867db00000000000feffffff8e77d64182b666e50377b3c9a39395735a89d2c90f5ff62024143f2c25ea51d50000000000feffffff8fe0b55ad0e150fbfe8d263c44527b967c44fd79ebbe88a09a91a4318f1c17c40000000000feffffff91ad86b51f541d480383681c4faa26575f723154ed6e39cb76e03317c8984c610000000000feffffff927673288f7c95f452e035b65c8cd46a57e58451b93dcfecfae0c33f00b4e5350000000000feffffff9477cc8e7dddfa7d183bfe0771def3778e7b2641996a3ea52f42d085d4007d190000000000feffffff948a1e5af04f265b29fd23700d1ac9926b5bed71ed5b2968f29abaa15036848c0000000000feffffff98a1cd6c74d9d42f88032e74182cfe8e71f125eb7eb1b49e8334d5b17bf4d07e0000000000feffffff9a7fefd1b1409dfc23d6be09dab5692cd9f6c59c98b2d7b0231f40b396999c2b0000000000feffffff9b0ed42c0446f8ea3c19b47be97f42d1a546bbd6a5a311cded5c1dd16c3606d40000000000feffffff9ba78bb678f5b7a289ca37b49835bc6ad383e2089dd3711833383c0c6e6d40cb0000000000feffffff9d2bdc85ec46fb0457dd41f02f5f7b203ff8c844062f3376c7f86cf2144dc6a60000000000feffffff9dc64c498135ebd6c025d7d43ae71120d6477bcbcd9828aebe21911ea21655c80000000000feffffffa0c3203666c02ea6f958408c8f2241b4d6e3a8beb9ab54736fe73621feb57ce40000000000feffffffa14e8b18777a8710e58942b56d094243151299f033cc21bb3ad3dfce2b3e77ad0000000000feffffffa262a97a28944d41d47c7f8788528c797d322f7abc0390c20bf22e3b835e127a0000000000feffffffaa3c2496b8237d865f81ff0bb8eb01bf2b69ee806463816ec83b60cace7a58330000000000feffffffabfc5cf05834234e1ee8a3c87c8de5d6a07f9530a09f2b34d9303ef30d8646cf0000000000feffffffa2d1512943366ab64e6d1749b81f993e830e5b546a87b9bd68fe0c5c865da9530100000000feffffffad976a10bc9ebe391cee6b83191520a9d0fb62a24e969477a4cc6dd26b29e4da0000000000feffffffadd486a6d94629b19713d723301b135c11af92b5ed69e6f0b9ed07d417078b240000000000feffffffb04574d6517ca90a26e07a749ebcde23f67f7ef8a594b23e699fa084529d96e80000000000feffffffb2197245ddc53b189c18d05d167210fd6291c6b9116862144c3654da5bb55d060000000000feffffffb4b953583df750085d727027674f69c6ba63513915941e42924a462d5bc15c9b0000000000feffffffb7f5149ac38efb591ad8c3a46ec9e979d5647c964190a135342435b55484dd570000000000feffffffbfc02225e0c5351bbeb63adb8e3b7859752363a5b85f5b2a6da5240a449e80650000000000feffffffc0def09bb3cbf791c52764cceadd389199be9d7603cc3d6d213ba45ffc98518d0000000000feffffffc5c9957c3a3e03204e603c313368d3c01206320beddfd28b850fd17b09a61a410000000000feffffffc64396e634d716a5ae280d9fd821507239d7b25a812eea6751254e462c8a73a50000000000feffffffc69c9cdd6825a657be1a06008f73b78cf185a9d195ba771451ca1ec09ce54d4f0000000000feffffffca6112fdc1db1a441961f6eb62b492c1397732cc5519d40f6aa335612f42d39c0000000000feffffffcb15dbc245dec1ef8cb8e25ef11921ca804c023e6ad803ebcb2a7b98380b60b30000000000feffffffcfe47e6ce0780c4594a2d1b76a2906c0a9ea32d39a73c244aa9d5d8dea67248c0000000000feffffffd0a4d502c22cea7da0d1a3cf99aef598b74fad19a6de35f21c6fd0d1b8cf27560000000000feffffffd25452b8575cafca10255179f95c8c66e255329220b7ff645af522af7b8038320000000000feffffffd3922dfd1a65216bbcd4646d0cbcfa70cfe587775cf4c673043c57061f48d7630000000000feffffffd75c777645d534009bc8e7b2c0b58a78cd63f41f47f6cd30868aeaf9b55e47700000000000feffffffd8f837530faf0d9b50efe1d79aed453b11916d565a2b9c40a380a85f0be2af6b0000000000feffffffdbce76e284668c829366dafd00ae4884ea39b2aa597cc1b4d2a37991a9b2ea560000000000feffffffe481d9493d67997104c12972b7c8a73fb87b16e228665bb784436fc0f58d7e660000000000feffffffe7a22d3d87255e4adaab9a6fd8a72320299a6902426424aa8b2b89b7c3b0c0950000000000feffffffe80ac9635b6bd91c1935eca6df80876ac8cdc87a2b91e925cfdcc0f06059b2e50000000000feffffffedad3357a1a9aeeb8c2771cc6f284db92a2aa31f458e35bb270216015bb0edd40000000000feffffffee85afefc31a99a4616bfb228e1f48691976b900ecdfe838e1310bf5b33fadcf0000000000fefffffff13e4784de0564595f3b4cce57ec0d8a4b72a798feb65f5fbca5b26a3a91d0760000000000fefffffff205212771fd3ca5a68340fa307810e44315ae02464b5d8a235ba6bca691bd710000000000fefffffff31cea9351fddc36393fa996962e204c461a34ff1c6ad243b3a4902440f165da0000000000fefffffff3c67e78777cc42ae2834bcf5dce5493fbcfcc6e0aabd7608cf4f9c936a37f490000000000fefffffff3ddc14df664f6e4f59b1f1e25241a61fc69f13125ea5a67edbd03b37d332eb50000000000fefffffff614bd5d83278ad95d8c5bf6fefe59b3675e832cc1c2349d7952aa734fd202830000000000fefffffff67ef42d75fc5d36ff32ab40f5c9f88f279a1173ee1db227a4706aa0480d66ab0000000000fefffffff69f0798ab6de485dcfe72391f4cbb1e5f4d39ee8f852b80fd4bb730eabd8e930000000000fefffffff8dd75e7c674cf7bf15f42fcb1256ef4f16b96e0ff6a359bc24c07ba734f09a30000000000fefffffffa0c47583d4c6f18e12b93764ccf57d2430a52bdd0ceb611924a79c82daf48b90000000000fefffffffa5ca0440f302bcf118946714dba6e81036e48477ff3a315084fe682aea6d1d50000000000fefffffffef369694bf0493161762e49d7ca16f1ba600250d801a848d0ca8d3f2d677d4a0000000000feffffff02c5490f00000000001976a9146843838a0aa11686cd0c01fbf470c9c5f302249488ac40420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"
Response:
{
"hex": "01000000660aeb1fef3f0f6e8e9598a2f4b434466b5ccb95e49aa7c4286bc5392d43fa1f2800000000484730440220234b370cddf91b27e172cb5d6257a9807e63cf680a644229147b39d87e597875022047a58509a11b190107a9ff6e08143bd0d450db233518ed26f123bd739576e9c201feffffff0d204965060600f1e79bfd183e7ee1b5b9b61c6379d6c95984cb7cdf79231c4c000000004847304402202ffed5ef972b01ec4290343ab0bc4cff989d0047f2cbc9e8b69f0f3102824c0e02203c7e3214344e6ac430e4f996a8980e7d9172ea1e8c0c238ba32b8930f4d4119301feffffff0d3eba8ce5b6b6ee7d2e804be57dbe4544d7b7169caf5afd6f207c1275e8977e00000000484730440220096fdd062535f200897de2f2dfb7d782499dc5fc24d8e06805eebed6ec125c07022077e4379409bd7c9052608e8cd52cd83b0c9314c623d9b85012eab28e10f8c13601feffffff04f8b24c1eb3aeb01cc483a5b6922eb341da17fd42c944b0bb18998c04fea67e000000004847304402204a8f45abf51333ec7c4491cd5750e5d46785475ebdb0a13a6a946711f17483a9022075805ee9f2130c3938e273c280b6b14b27640349b537b55348c40ede1508938f01feffffff0360b074597abb6e32c319078ea5f83cdfc85d5c892c0388893d8b66876c077b000000004948304502210089c7919c6e7412a1569434f74caf7110bbb0341361384067265c142c8e033b2d02203d5eaa583d727fad487bbb689bf433bac32d907e707043e8f96f8c50fd3480d501feffffff0e2ae757c446029f5dbea36926883744a2d3fe8ee05381c2b4311e7d58057fd40000000049483045022100a0672d882511b01696192965175f3827e65ef8d45b3217b563d0f97f3cab512602205c568b5c1eda0c149976380b38d2f93ee384500bb5eecf6e9f3f2101d649eace01feffffff149c5bbedff321a7810d5db264829ffa5529a4f29ca3a452b0543736339bf0260000000049483045022100981f7f5210e17e1c73fe5083ca7b29a5b1a9dfbbf5474c109069a4b3eecbb5c5022065e21331260c718788b72902da250418b0091537a540e8f6152ae097632637da01feffffff1f9e6624bb5185f0b51d36a3a94982f0d8a325bdf81db90bf67945354a6f40c6000000004847304402204391d39a88d2f8427396bbbca508bcdb3b6897c25bee4c68d357b878419285a602205da8f54aec5bb9253aeaa9b4c4a1a8a2fe602e894422da0279f21f9799a3540201feffffff22e752f465434c0563a7e0b9d104b8633bdbd6073bbe61d17dee0d53ac8220430000000049483045022100d5a4b70ce4542e30a7cfb09ea259405ee202f99b556c88604b06a86419b2e72602202417376668f93e44b404ec2bfe6e797b699367604de296377dfc6944afce722901feffffff2780816ab4fd0177dfff1a98b7783bbefe8d08f339c964d2438b7e73c8ce614c00000000494830450221009d1878ce69f3a438748bcc73de00d531492cd36d2bf7a292bc5bbf67fcf6c774022066e1705510ed5a5177e78a71ba9891d69e11a7a3bc28599d5d18c29c2033a00e01feffffff2da12ef31d8678120d4961c9090035ae9e8f48dcfe4e2f461fb10437473c2bc90000000049483045022100fe0f6284ddb97b4595d77cf7ad5ef4f5caa67cb7c4b6e6ee9812bac076787377022032991f85e1962140673af04a85a442bca3df931ca52c365d3cf24e79b782b2d101feffffff39a00efcf7f678ecf0252ee2b4998a43121aaad28abe518be06a830fd34ae24e0000000048473044022038759690b62c95f80a54d3bde28abdf7dddae992ee4a18c511a4d442da67d758022016aa7dba3da26aa7531731222a0f66cec25c5026cc4903b51dd3fe5483af4cc401feffffff3c5b78d98b3edf510b003cc5723270854313d51ad40859ba08a622f3a269a66900000000484730440220141e545e4ea0c27a630972d474b7d95dd2c9da1a129a7e680016e4ad70c5579102207a3384d8c988bfa526bea0f7cebfb8a8d81ae4b7272d23e83268791fc8eba2bf01feffffff3ca10423750150708e817fe0020a7fd0a687a0456158db659af112dfefefa299000000004847304402205c4e4f8934cea71191f87208bbbaae36b2b3ac4f7282256cc05446cdd1ccc0980220038db0a46e2b06fd61acdf1b47a5de87b787a62a1b65db823c904efa6223129b01feffffff4005c2dd439c35e3f04384142b66871e15a72149218d66be2ca3b13f7e1604b0000000004847304402206b8854445fdb689929143c8daf33fa52ddee06c360073f6262ffea4db0b8b71102200b4d7a166bfa81e8f2570afcd9de338b9a0d7bc72a3962c775205933690f302901feffffff408d53f3499c6db833b4a9b19aa8cf61c95182775a0539efef9c62a0456520c40000000049483045022100c1f028354c1034e61d59999070a8ab554a97f81583d72f38c0f6b0b7a52fe8ab0220538d6fec3f35a595614602203b360730b2f13c3bd879fdadca06dd8a16b90b9d01feffffff43671a7bd5f31ee1642842027378035d73b06d446fbb1666e95638eb0d55d1c9000000004847304402203fc7529cc7a96726728a4aa6a1698fc31bad94d1eadda2a0f74ea8f22d752869022011983a3c457e5c7ffc87b576d877e6f02ab8e08dbda6a94dfbf245315a3365e201feffffff45ee4a5c7a98f315d26c1020b26576500ecae4d6a6a78b3ad169788006e7c76c000000004847304402207a60671e1d0cd3d5d7b8eb2a1b53a0014f30de45f0e379a30435a47e7f9861eb0220689af75a99876c1d1d206869dca223806c45ad64f32cc08cd624936ec6c0600f01feffffff48244290df0dccc781e7d081c731081c2e7e022176cc7b4b31fd92c1e31d970e000000004847304402201972bc346632bcd5166cecbd9d7ca29583c7ad938640d7db9f4bdc6629fff086022019135d7341ef96813a839c6cc14f47c7d2e42c262abbe8747e16c6869cf2b90a01feffffff48c28c27f8303266e0547b8c453b9823baed7a9e06105c09ba4cf65cb2bd5d2b000000004847304402205e40a09a37c939cfa6b5143a2ce596452ecbbd223400922b0001bda694f4c63602205aad66d989167c9bbca130aa489de6286390e55f9e9ef4c5c043c2f13377c7c701feffffff4b28d567f5933d5992559fb19f90115b145db32bd1b6e52d309021da8e6063cc0000000049483045022100ceb282925d7eac742085d5ac48443e9af8b72873fb7a2f96b4e196a58a4b29d7022074790a63adec4088a5d5c2bf1fa80597be0e17afc7490620163a873a2ef1855d01feffffff4d45006be4acc1bf5c69722cb744b967e615d2d35014fc82cf61c2a4905717a50000000049483045022100c6f42ccf0af44182e144aa925b631cab8d90959fa96eb0453335a970e74910d402205e99e1f1d23813e336a3c96efd6e75490f3b5d807f0f2bbc677499cc0b92f47a01feffffff4d8540fa9e580b140359e0a17aac6415ca80072f9ba26fc2b43914092f4702400000000049483045022100b42e72fdb23f4f50af0222d5e590bcc676d60858583dffc1ba8b35730e1c8eb102207cc50ecd38639100131b4c4950cedaac4c4ee37c7a6f87d3ed7fb7eb165559c101feffffff4ff26de89311f83d65a3936e06937f30a75dd50594246d910035bcbe19c0ea6a00000000484730440220425c41bc88fce16ba54f2611a54737d9b5197abc541c730711157b290486cdc6022003f967d0f98864249d80720c65e04c475cbc12c482104aa7e45a06bc9eb080b901feffffff511e169a83c0c0f8ee7163c34fa0e3b024275892419f11a2bb96d4976d3f9b4700000000484730440220136e776a7bfe3fdb5a5b8db2783452ed7cf1fe3c89ec001ed69455a082337e49022057e7dc0ace7ae100a2f2c26291cfe80352b34dfd9269d07468ee2dfba13fc02001feffffff52325adf85f74f38f467bc3a99657f322988add8aebb371bd080088efb95836f000000004847304402201fafc46f92d80a9b4f71a15113ae8e8182dcaa09cff63645db5b858044f329730220160082cc1a3bb262458a204040c3ecc23b276c4558ea095c1b66e20a4004e26b01feffffff532ff452f8423507348c542063deb6f257de711237ff8d718143358128e2c6470000000049483045022100d8dfe5557eae68e8b3da5cc787b14e85fb4d10d2c8a80eda12e69b807319ff9902200b104ae561f1d9c4f0c1646327686f890aed1ea8fb1c1b411f07059517737d0001feffffff5b0d6fe54dce0515e6947f5170478cabb06d1e855365a6b7dbb0118c4450ff0b000000004847304402207fad37e344180882f9cfa3e36d036282a91467ff15fca2f24278f5fa5283b99d0220325dda0a7c35a85cb617bcac369ec0033023c221771cf02f1f877f693f1059d901feffffff5b7db5b32a8e8e8c6307a7d0afec7062637eec39670f1afb08f0b04a50fbc47400000000484730440220752cc9659edbddc78293b1947f84d2bd69e32ef4d5425d4e55df4ca74a7a962402203a755152ab6d38a7ba91f26f476d611cd9c6b27167d6e20b511c4830038d102c01feffffff5cbecf874fd1996cd4e49cd41c98a586c533eac1ebc37df92cf5a9545203f935000000004847304402203af4f03cfed41a4d8387a0859324ce3c40c953582e8848867d06d3aef096deba0220104c18b2e243cf7f076d2833c4fac30e0f5e62b58bc039cba6ce7fe47ea394a101feffffff5d015b907e23b9c5e00907013f66d258fab2f016842f0c8e69346d72b0221dd70000000049483045022100bc3e1c873f25e1a661ef81c109de1758ab13df3fc591540658c5fc05bb1e8c150220309b87661ce039899d5be3b510fcdbb9464ff8cb47af06c016390d79daa7029c01feffffff65c461a04f571b50ab4fe3e367952bfba755eec9b6ed23cb460ab3bdc873fff80000000048473044022037b231fec860afbac51e3034e1308e1873d87dc586258ad8c7ede04cf0fab97e022012eceff07cf09a2c3d2f6884ee885ff9f8e7526de8c08b54e5e538ab223bb31b01feffffff686da3cbb1a1af26c2c01793345a5fb8ee47829aa907ab95b8144fbeda1707920000000049483045022100a0d89b8331105f34528f2c9687f53897a2a14f57cde1390513b4d0fda530a4200220573800bfa5cba98af2a08fa3e87fd0142fe1db6f391a4d160f70565b1078210d01feffffff6896423421d7e1193a7b88d2fbf1eef1c46f637e7a49217c171a18852d29e8d60000000049483045022100cde87af1eb614761149aef298153c541e24ff45345f99dbef18bf2379d27f347022063115fb6b37842eb7cc4d8910ccd047635a9674e72d9418894614014c19d583a01feffffff6a0f6f77ae1d42dc96c39c620f401f32c9774f18f1a039e97b4b405b8aaa757d0000000049483045022100a82d1afe573bfaf0668b3acbec55f68bcbb58bed7b806d59837c32f3560cd1d70220198904866e0bd9d19cc465cf09e256c439ad5309caffa347b8c416443ed07a0c01feffffff6cfa0bcd2e2689498496dc4b15feb0fc535667a88005f2c88198265bb1f8f3d8000000004847304402207917043acb4879438625ace42109cc1bee16054222473d2f975b3edf27286f3602207413e93cf5e696de7c0d210dfa70cd4dd9e62e78ed86a3d99682ef8ea5c064cd01feffffff705456a54cb0b94ec15890bd957dd778581f606270a331ad5b15ef48684a5fc4000000004847304402206668503174e874bc09d999d7bc47f82a5ac47c3f1bc1c43ffa1cca74c1cde4410220616df31f268371b61d83acdfd394a7bcd8da5817174faa29b51c648786c5405a01feffffff718076a7dd771121e817b98e98f46c7f52722d6cdfca9130203fe5965f0a3c00000000004847304402200f1c2ef04cf5fceacb53724360ce3af3794d14ef8a47d4d09c8e3b95b20e48770220659021ba00a68e5f2f4053ec904cc7e65b5bd5db76ff45a9be4ba35ad1a2d0a201feffffff780ed86aeead9747bc96bf7053b02ada6ac566481763e70c29d3d00162bc7b530000000048473044022027f04c7d149ed6c9c72ce3956917444cb5f943aa95adb694ec30ef53c930cfe202206dc14b5f1d59b6724fea484501e36fe7bf40849614921cf76130ec20665f35d401feffffff7b3ad2352be9169286629dcf064fa769c23a8aabd468c30eec35a0c79b61f1f80000000049483045022100c4a61d02e54b0c0b8a9749d394d6447326bf66f3524388b8854c5585ad71704702200b0e71e178082df01e66d0bb72aad0238b0063018cae190c2f21c0fbd78a462001feffffff7fc4676bc415a467bd10d303eacd54617acfb6876945e3bf1217dfd208c6d58d0000000048473044022064ab0c92b7cb2205f1d7af0a2faa441eac041cbb892b166b8f1f060019301546022066924807801b03876a0ac1830eb355ed26c7a67b9e28fcb0b3c6dc5d3c8ca1db01feffffff80fe96eb05e5fcf89fa7e19b1a653e0b8164cba383e2d2ff5934a61c42698cb100000000484730440220515b9c588036449b326ab8d74679cf65c7fe780a03b23ba8428cf829a070abd402204c71e343cfe18e166b7259509b47dcbec0b5b29a764e4dbd29a39479ef60d34601feffffff875ea454109c4725766d372f0fe395dd4744737378b3a246094dc0db7fb6e95f0000000048473044022039167229a3f6ece80aebdfb425608c855989a0e7934abe0c4fca1175f60d46b5022069f57fb057a537cd95e5ebd6a93709e0bffde3d05bd01322f08d0fecef7c061f01feffffff87b7c1fd810834fdd892975a795b9e6c1b1aa398436ae3ecb19bce62ac11aa4e0000000049483045022100ab701a93c793c182bd54f06f80de91c03e36fa9b33b220a91d028f2196d329b5022020e23cff44abe2510b50ce0a8cab286d3ae17c59d8aebd20b42613b764a128c801feffffff88b22fca9de29db1901e9c8accbf1caf8fd4d5a37802b3bf5142038809ee3c6900000000494830450221008ade6fbaec28bf02b3914ffc62c4e0dd7da3d50b41b1054653826a38573e6c13022032d2528595fad675d3f01aad532bdd5ca64960a9cdec35822bb0e69b57fb78ba01feffffff89e4b0f44e022cf53736520aef84a324100f19f4f0862c9d2150b686e951d3740000000049483045022100e69902cff246e6ae5ae8a502aaf2ecc0f8505b8546b17fef18a6e2dde8703bc60220121b6293f7c24aad7766900a746693b9e30ef4e8cc1ca01b2ed4537b47debd2f01feffffff8e0611807aa639621ca6be13a2eda8d98c32867041f929dbbef7742c7c867db000000000484730440220710257eb2b9f5e7b9517770f81c0999a7fcd5b798d8665e0674abec0909b5bad02207bcbcebecb36661cbc8793575f62524dac431fbee3f9c02fb0d854933357694001feffffff8e77d64182b666e50377b3c9a39395735a89d2c90f5ff62024143f2c25ea51d50000000049483045022100ec5f6927e57df66eefcd1275d4236f38841466cdb29aa9ed8c6f8b8f64e0cc4302200141c090ae22c294844bd0b5179f97fd4b98cee426dfb795c3288f37f67a70e401feffffff8fe0b55ad0e150fbfe8d263c44527b967c44fd79ebbe88a09a91a4318f1c17c40000000049483045022100bbaec071109be2005be905bc0b2877286f24cfdb4d8431a31c8f57d802db31270220345e56f174738a6a191ef0a91c4cdeb686dd552d8992ea6ce7517e0ff9cafad001feffffff91ad86b51f541d480383681c4faa26575f723154ed6e39cb76e03317c8984c610000000048473044022046628accc862ea34ab15232f97505cf673d8bfd23d6316677e524e3643e92a20022078414e64419c96474fe2559c30134ac4c08b5a0617a0dc9bd1ce09e85a8df89001feffffff927673288f7c95f452e035b65c8cd46a57e58451b93dcfecfae0c33f00b4e5350000000049483045022100b9e84841140ae7b9bf08f82e014247a8c270d4073b457fbee74743c413e0b4370220292fc63652cd2fae0d1baf9c705de61478b2ec8d4623b9ecaf2aca715c1e69d801feffffff9477cc8e7dddfa7d183bfe0771def3778e7b2641996a3ea52f42d085d4007d190000000048473044022073842db3431ea57cb4aa05435648817bacb36a623e2528817e399126068fbd8b02206744687cfc5587f07d6a507eeeb2aaff45731b3dd9222c40f2b62b60e4db59b301feffffff948a1e5af04f265b29fd23700d1ac9926b5bed71ed5b2968f29abaa15036848c000000004847304402207c5440b72bc608cdf4c7fad0bccdc19d43877e31b22fe3f5873f558a6068e28c022013e3a5b0b11eeec0bfd5cc8317c8a61ccf28ce19a1b50fd7759502a350b991e401feffffff98a1cd6c74d9d42f88032e74182cfe8e71f125eb7eb1b49e8334d5b17bf4d07e00000000484730440220393955bb76c236467d92d42091a290631cbcd9ef3c3f177ace6f1ce73abe319f0220153d5c0aef39f5cea8ef53822993e374dc6d66a758d599f25d2e934d8c97769601feffffff9a7fefd1b1409dfc23d6be09dab5692cd9f6c59c98b2d7b0231f40b396999c2b000000004847304402201f9d944711c3ee35c47b68ddac1a0e1f728884847d8df788b398157de22e9bbd022005d97ceca294e96f5484420189d7a99b9850ecb2c849223ddb934c6c772e32f401feffffff9b0ed42c0446f8ea3c19b47be97f42d1a546bbd6a5a311cded5c1dd16c3606d40000000049483045022100d42b4c9c6fbcbd65d69f0967cca562227f8fbab7ca2727822eb9eb4d0ce8e77a022049d752916ee19c285675786aa04c37d7025e2cef6907f70849f55cda414f3fb501feffffff9ba78bb678f5b7a289ca37b49835bc6ad383e2089dd3711833383c0c6e6d40cb000000004847304402205d3a652a05971d324947fb9d4d15e98393262498e09a6d8fdde7422af91d341a022070e017f2edf61310cb724401a451c1d2be59175e68b49e5c1f82f20084f0b2e501feffffff9d2bdc85ec46fb0457dd41f02f5f7b203ff8c844062f3376c7f86cf2144dc6a6000000004847304402202f93a774f96364ad8fdf46132f47dde1fac4b833d1cf7c20c6c69f03c605c09702207cf7ef42d8c97b96e349d023efd9e7e0b1fd74c50561290d16f3f122e1ead8fb01feffffff9dc64c498135ebd6c025d7d43ae71120d6477bcbcd9828aebe21911ea21655c80000000049483045022100f72cd391c5dd1bc77de0605a3cb35c246a5c1cc14e7b9b3fc1cdd90fd42cfa4b022069049bca8a2f5100ada2a407a2354d04efa94573a7cd1bfa4130cde66e481a1001feffffffa0c3203666c02ea6f958408c8f2241b4d6e3a8beb9ab54736fe73621feb57ce40000000049483045022100daa9b7a48975348b41dfdf8b5e4614721fd018b950d3cec1d7009386bffddb470220522220c5f3ad8f1f19cb0eafea1aae7a3489cdd3dcb3d64f2ce75bd2066a73dd01feffffffa14e8b18777a8710e58942b56d094243151299f033cc21bb3ad3dfce2b3e77ad0000000049483045022100a9e02b9ad05da478a1cf06a235743d202d1f9e8c2e969ea8b1b7d5fe6778fd9602203880f139bf40766d264c2d7f858eb36dc2257b4cacd116cacca400645f80680401feffffffa262a97a28944d41d47c7f8788528c797d322f7abc0390c20bf22e3b835e127a0000000048473044022059a9da8cb72d3d3967ad3adcfb400ee6043ee088707424728de63cba9361da2102206ca3e6681ff149bff11135315d431e24e05aa3c794b41ef0822b8969b0d1597401feffffffaa3c2496b8237d865f81ff0bb8eb01bf2b69ee806463816ec83b60cace7a5833000000004847304402205637e4e9538fa7489e017da763bce9182c5e78492fe23d5366c0638af15c7eef022034e9a552d342053c4184cea58684ffbd0881467cd0a40f009db155275deae1c001feffffffabfc5cf05834234e1ee8a3c87c8de5d6a07f9530a09f2b34d9303ef30d8646cf0000000049483045022100a68eff499320029204dd73f707d36d65583d21ebfa063d770f55139ed546ea8102206646e141b55f506ed457f24311eeec6e302833f69cd08c9ea3086c78f82dfd3801feffffffa2d1512943366ab64e6d1749b81f993e830e5b546a87b9bd68fe0c5c865da953010000006b483045022100c686f7a4b2e8af7deca60cb20b0c626609548f5426dda6bf33207f82923e0ea202200d9c36dc490f014d0d4970ce8c18621d39b6c0c134c7e43da0f62326725598ba01210360cfa32fd05b4c3bc270fc6e8c891af45a149d34664746ffc67f5cb49c6b5f5bfeffffffad976a10bc9ebe391cee6b83191520a9d0fb62a24e969477a4cc6dd26b29e4da000000004847304402203385b46d676be7f898b316fdcf56a8521bda2224ae891b48be05cd880ae7a0e502201f6de4117623336529e445e0943c519e80150cf0d4a5b1427766d06db2d7a26b01feffffffadd486a6d94629b19713d723301b135c11af92b5ed69e6f0b9ed07d417078b2400000000484730440220575a03c7a331f65defeab66ab1404503a700ece0780889266bd1866ff806096b022069348e446f67f551949267b49861e96904e0b47c75a220aa1cd7ffec3b8fa7d801feffffffb04574d6517ca90a26e07a749ebcde23f67f7ef8a594b23e699fa084529d96e80000000049483045022100948f7ec200d121bdea79b29bf1c608c6d5e007aec62acfb3a5cbcae84ce457490220431802ca646caacfeaf1827e1ceb70f07752413c65bb50db24957166603bab3f01feffffffb2197245ddc53b189c18d05d167210fd6291c6b9116862144c3654da5bb55d06000000004847304402204def3dfa143d5887b4075f45d92a91df9825f1e08bee1c29901c1f117ab30df302207eff300c5347d13f531ec36789a6f4f66c07149ff4c86f21107d0f21dc400d9e01feffffffb4b953583df750085d727027674f69c6ba63513915941e42924a462d5bc15c9b0000000049483045022100a267fdd914d9ce78ca819e08312fb2b3c0f9c395bd30d22b26ea8c6a8af3618f0220548b821abd8f1f1fec1db25fbc277cbfc5840e47185a830174a97b74645af60401feffffffb7f5149ac38efb591ad8c3a46ec9e979d5647c964190a135342435b55484dd570000000049483045022100d1d05a271a8516b9357b0e3e73d5413aa138ae9a10c1ccbe30ba7ef15994c24202203df3584a99260ff637db9515361b258e6cf7fbbfa15278b29173dd2c4f25264901feffffffbfc02225e0c5351bbeb63adb8e3b7859752363a5b85f5b2a6da5240a449e8065000000004948304502210082c85c2c7d8316e9e3cfba9f5bafcdbbeaf0509c3e896bd4121f19e4b82cbfe6022070d7650714cb1975215fe109b8f1da2eea866abbdf05e487eb1d75e12776e52d01feffffffc0def09bb3cbf791c52764cceadd389199be9d7603cc3d6d213ba45ffc98518d0000000049483045022100841df35265191f063a9ad2414ec9b36fe39ef9ae13c9fde0e82d67ec9bc654e302206dd8523cf58547ab425ea55a8d879e75d31558701d4f57d76b0f67736ca5e5ea01feffffffc5c9957c3a3e03204e603c313368d3c01206320beddfd28b850fd17b09a61a410000000049483045022100c3467add04b9e313238376a0d3867bc5b59fca8b2eb76bcc18fbc0b0805e63960220578a2cf379848771a9b13e12559cd130853c7f02d9ab497a74f3305aeaf7b00b01feffffffc64396e634d716a5ae280d9fd821507239d7b25a812eea6751254e462c8a73a50000000048473044022040e5e55b23846cbd5e0af588564e5501d58cf2a18eb485c562352fe2801230d002200c70fcf828a81c1cfb856a2d2cc9de21f2564e6080b2f84f44c65b679f49d09c01feffffffc69c9cdd6825a657be1a06008f73b78cf185a9d195ba771451ca1ec09ce54d4f0000000049483045022100e10488858800081f775278c5d844ba2c2cda71ebb4a822d028637191e13efb2602203f7e7f580dad9d7ed1d4cda38222095d8377917c7d4e90c8abb4b9bf3a40975c01feffffffca6112fdc1db1a441961f6eb62b492c1397732cc5519d40f6aa335612f42d39c000000004948304502210097ed9842254112825356823d7365ce8d0bbc973702be7f25951e21f48fcd6e5702203a0aab0ef62926936815e1d9490b335359f766d0ace9b858d59bbd8ba26cb1d901feffffffcb15dbc245dec1ef8cb8e25ef11921ca804c023e6ad803ebcb2a7b98380b60b30000000049483045022100bb9285cab4a68dcb68b46687b59ab1769a0b5aa1ea6f45488e189f58e698321f02205e6499101ee3b0f005e6d3ba151282c236a79d32488e16b1867c6e70c8f7f51001feffffffcfe47e6ce0780c4594a2d1b76a2906c0a9ea32d39a73c244aa9d5d8dea67248c0000000049483045022100a4681709fd0b79ceaddd9d695bd5c740391970a1feff2dd3a90674d20ca95a2a022076dbad3df0c4f8158eba4a087650feeeb1736b5a8b03aef15f698be4fc668abd01feffffffd0a4d502c22cea7da0d1a3cf99aef598b74fad19a6de35f21c6fd0d1b8cf275600000000494830450221009d8a22fe94f18d0a65e8f188b702b4023948e236ac2efd36bfb20d2054e1d55402201383ab2ed9465790eb9496483f10f54e40ae201fb98358cbdd71a0e650ad1b9701feffffffd25452b8575cafca10255179f95c8c66e255329220b7ff645af522af7b8038320000000048473044022013581d5e4794efb6df6dbe04339478ecf019493814d9d52390b6cc790c998762022006aef7acc10019a8cfd7ae99e11e5877a9cf1a5a6ef084549815435f7b681e1801feffffffd3922dfd1a65216bbcd4646d0cbcfa70cfe587775cf4c673043c57061f48d763000000004847304402200bc9095368e4409c7debdf0871f18af1d36e1a4851e4b948a1ce362926550611022034fb19afe76cf133e4bb561fcd3cfe7f3d49743fd75022c124b6e45bd9f503cd01feffffffd75c777645d534009bc8e7b2c0b58a78cd63f41f47f6cd30868aeaf9b55e477000000000494830450221008f4a11d94e97f02e3226c509c70a3582a280ea3bf33309ec392ceeda7a59567e022044bf0d858442058b7c5fd8c73e47287f9283e957fdb39fc005cef70e22b0c07001feffffffd8f837530faf0d9b50efe1d79aed453b11916d565a2b9c40a380a85f0be2af6b0000000048473044022065ac672cfaffe8f8d02fb8064cb54f4d335e7af222452ee71c9b249602cbfcac02202cdb7e8cc05c52db51b71a05258abaf0810d61199eff9ee0ea37d8c373a876ab01feffffffdbce76e284668c829366dafd00ae4884ea39b2aa597cc1b4d2a37991a9b2ea56000000004847304402204480dd6aac1167bb49f32fc04feaa3a7c19ad6cba48479cb72dc7d0bd71ca279022036e654a48cadceba49dbb097892ce5d90d8f082460fb18776d353e9d832ba83301feffffffe481d9493d67997104c12972b7c8a73fb87b16e228665bb784436fc0f58d7e66000000004847304402203645fe9770f3851392a85b8dc9dd405ab13fd8434122f6763de459129527fd0702204d240e91298a1487d496feb320dee028df7dbb5c9236e5d62a4964347f97279001feffffffe7a22d3d87255e4adaab9a6fd8a72320299a6902426424aa8b2b89b7c3b0c0950000000049483045022100b362e030a6739f020622f0f7e34c48fc4ff6147ed88a194a37a8a04c8e42822a0220755bcc63667eb4cbcd52108d27245765176c6c5b2e9a77013aea4d7474c0a1ec01feffffffe80ac9635b6bd91c1935eca6df80876ac8cdc87a2b91e925cfdcc0f06059b2e5000000004847304402204a2b8c311a11920eef4d64e786c5f26ed82d4c1562f2cc0e73fd5a5374c7061e02203693e77f88372a335d1463df4edd062b6dfe2bb895d56d58f3a404c27757378501feffffffedad3357a1a9aeeb8c2771cc6f284db92a2aa31f458e35bb270216015bb0edd40000000049483045022100abad2415b7c6ca9ccf3c52b4008c4d531360f2d6541d9025ec2caa4d764b46da022054f5d2833704686a860fcf978313a3c6c61f16e9a1cf84a3e4ac76c8950dabb701feffffffee85afefc31a99a4616bfb228e1f48691976b900ecdfe838e1310bf5b33fadcf000000004847304402200f7afc12d43432f5303b892b08417743d43a05bf938719428a88c85e255e5b0d02201a12cc706286a1c9329f9e37e62143866563b3773769def6912494a73c17a9f201fefffffff13e4784de0564595f3b4cce57ec0d8a4b72a798feb65f5fbca5b26a3a91d0760000000049483045022100fd3c9b2e02db889ae2bd43537a308a87a7d701bac19083e3a985a93674239e2802206dd36da12f3f2b222ce4387cb91e1098c5f93d25ce95fed0e5d21e6724af554401fefffffff205212771fd3ca5a68340fa307810e44315ae02464b5d8a235ba6bca691bd710000000048473044022062aa2571a91a7e06f0e96570bb3a348296ce7b756ceed48fe69be91f94a6c5c70220631885aa6fc967e40cd1820c83310143884e175227c5434e33b89245598d5e5c01fefffffff31cea9351fddc36393fa996962e204c461a34ff1c6ad243b3a4902440f165da000000004847304402203355527ee222e6bc756ef30c6ad687a21109a5175b1eb27592e9e1938b9e8f850220206ea10896e9e307ee73d33813048fece04bbeda702e11cae8bd61297b73590601fefffffff3c67e78777cc42ae2834bcf5dce5493fbcfcc6e0aabd7608cf4f9c936a37f49000000004847304402207cd40b7d6ca2b869d3f00c0babb484c7a2896c080c593767e0a293acd1505a9c02203a2f8c191b20fe4fb08958b3bb20411834d17f7fa075deb8b2272d22112ec8b001fefffffff3ddc14df664f6e4f59b1f1e25241a61fc69f13125ea5a67edbd03b37d332eb50000000049483045022100a40f81d4e1791d0253a2484656c27994d1e42aaaf77995e9fa6e0eb02480bde30220669c0bfbd0772ec1ad8ca9357eb3ca1100d7b40ed97bb34e23c8cecb42511c7001fefffffff614bd5d83278ad95d8c5bf6fefe59b3675e832cc1c2349d7952aa734fd20283000000004847304402207709f2089f820012e76eaa6221aa0b9776cbdcd0b0b458d400c7c1ca9ed7eedb02200de75bbdae8100b4b27e5deb164e13d596b6661248be45d817b573cdf8cb2c7c01fefffffff67ef42d75fc5d36ff32ab40f5c9f88f279a1173ee1db227a4706aa0480d66ab0000000049483045022100b09aa2cca247052451537f64801ea561506bff82794a8870c077c32c69d0bebc022013bceb4edd8f126af25c07a74d5c16935b0e916cdcc25d49ee335c430400eb2601fefffffff69f0798ab6de485dcfe72391f4cbb1e5f4d39ee8f852b80fd4bb730eabd8e9300000000494830450221009d91a34a7294250ac5b31bc86a2f7ceac8ce79e49d8ac7b3b02ad0cc278f16d102207b9ea41b03e72746a67e7bedfd1cad7f5055a915abdabc13f8e51815f29e983601fefffffff8dd75e7c674cf7bf15f42fcb1256ef4f16b96e0ff6a359bc24c07ba734f09a30000000049483045022100cf9283df82dc2c0d26c2fc9349d16faf2c961919066798705da4afe6fbf27af202207740172e195f5713eff2aeb39d12923625401dea6a0c4b4aa19be3b973c9077601fefffffffa0c47583d4c6f18e12b93764ccf57d2430a52bdd0ceb611924a79c82daf48b9000000004847304402207b46c5dfb4e65c5f91f9770acca2a1ad24a4cdd7e4f27ac9c5e55b14f8d7c00202203b17ab29bd9be1559d550cae9f79728a644682a8aab5db1a1cc3432bad159f4701fefffffffa5ca0440f302bcf118946714dba6e81036e48477ff3a315084fe682aea6d1d50000000049483045022100929668780086aa4c8945fc6d9aaa340ee8ae2807ff2f6a89623ffa102d2bdf6d0220318d3e075a82195af58a66b47c8d62849d69ed1da2e07402d89440a6a77b63ba01fefffffffef369694bf0493161762e49d7ca16f1ba600250d801a848d0ca8d3f2d677d4a0000000049483045022100f7dd5f966156c81a1d2aa694befa6b19e35aa8d7fa199c37a803cd382836fdbe0220669d85a44632a8ea6093b783693c4626ad8c71be4b82b027c4cdfa63682a9a1601feffffff02c5490f00000000001976a9146843838a0aa11686cd0c01fbf470c9c5f302249488ac40420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000",
"complete": true
}
Send the transaction:
Command:./hush-cli sendrawtransaction "01000000660aeb1fef3f0f6e8e9598a2f4b434466b5ccb95e49aa7c4286bc5392d43fa1f2800000000484730440220234b370cddf91b27e172cb5d6257a9807e63cf680a644229147b39d87e597875022047a58509a11b190107a9ff6e08143bd0d450db233518ed26f123bd739576e9c201feffffff0d204965060600f1e79bfd183e7ee1b5b9b61c6379d6c95984cb7cdf79231c4c000000004847304402202ffed5ef972b01ec4290343ab0bc4cff989d0047f2cbc9e8b69f0f3102824c0e02203c7e3214344e6ac430e4f996a8980e7d9172ea1e8c0c238ba32b8930f4d4119301feffffff0d3eba8ce5b6b6ee7d2e804be57dbe4544d7b7169caf5afd6f207c1275e8977e00000000484730440220096fdd062535f200897de2f2dfb7d782499dc5fc24d8e06805eebed6ec125c07022077e4379409bd7c9052608e8cd52cd83b0c9314c623d9b85012eab28e10f8c13601feffffff04f8b24c1eb3aeb01cc483a5b6922eb341da17fd42c944b0bb18998c04fea67e000000004847304402204a8f45abf51333ec7c4491cd5750e5d46785475ebdb0a13a6a946711f17483a9022075805ee9f2130c3938e273c280b6b14b27640349b537b55348c40ede1508938f01feffffff0360b074597abb6e32c319078ea5f83cdfc85d5c892c0388893d8b66876c077b000000004948304502210089c7919c6e7412a1569434f74caf7110bbb0341361384067265c142c8e033b2d02203d5eaa583d727fad487bbb689bf433bac32d907e707043e8f96f8c50fd3480d501feffffff0e2ae757c446029f5dbea36926883744a2d3fe8ee05381c2b4311e7d58057fd40000000049483045022100a0672d882511b01696192965175f3827e65ef8d45b3217b563d0f97f3cab512602205c568b5c1eda0c149976380b38d2f93ee384500bb5eecf6e9f3f2101d649eace01feffffff149c5bbedff321a7810d5db264829ffa5529a4f29ca3a452b0543736339bf0260000000049483045022100981f7f5210e17e1c73fe5083ca7b29a5b1a9dfbbf5474c109069a4b3eecbb5c5022065e21331260c718788b72902da250418b0091537a540e8f6152ae097632637da01feffffff1f9e6624bb5185f0b51d36a3a94982f0d8a325bdf81db90bf67945354a6f40c6000000004847304402204391d39a88d2f8427396bbbca508bcdb3b6897c25bee4c68d357b878419285a602205da8f54aec5bb9253aeaa9b4c4a1a8a2fe602e894422da0279f21f9799a3540201feffffff22e752f465434c0563a7e0b9d104b8633bdbd6073bbe61d17dee0d53ac8220430000000049483045022100d5a4b70ce4542e30a7cfb09ea259405ee202f99b556c88604b06a86419b2e72602202417376668f93e44b404ec2bfe6e797b699367604de296377dfc6944afce722901feffffff2780816ab4fd0177dfff1a98b7783bbefe8d08f339c964d2438b7e73c8ce614c00000000494830450221009d1878ce69f3a438748bcc73de00d531492cd36d2bf7a292bc5bbf67fcf6c774022066e1705510ed5a5177e78a71ba9891d69e11a7a3bc28599d5d18c29c2033a00e01feffffff2da12ef31d8678120d4961c9090035ae9e8f48dcfe4e2f461fb10437473c2bc90000000049483045022100fe0f6284ddb97b4595d77cf7ad5ef4f5caa67cb7c4b6e6ee9812bac076787377022032991f85e1962140673af04a85a442bca3df931ca52c365d3cf24e79b782b2d101feffffff39a00efcf7f678ecf0252ee2b4998a43121aaad28abe518be06a830fd34ae24e0000000048473044022038759690b62c95f80a54d3bde28abdf7dddae992ee4a18c511a4d442da67d758022016aa7dba3da26aa7531731222a0f66cec25c5026cc4903b51dd3fe5483af4cc401feffffff3c5b78d98b3edf510b003cc5723270854313d51ad40859ba08a622f3a269a66900000000484730440220141e545e4ea0c27a630972d474b7d95dd2c9da1a129a7e680016e4ad70c5579102207a3384d8c988bfa526bea0f7cebfb8a8d81ae4b7272d23e83268791fc8eba2bf01feffffff3ca10423750150708e817fe0020a7fd0a687a0456158db659af112dfefefa299000000004847304402205c4e4f8934cea71191f87208bbbaae36b2b3ac4f7282256cc05446cdd1ccc0980220038db0a46e2b06fd61acdf1b47a5de87b787a62a1b65db823c904efa6223129b01feffffff4005c2dd439c35e3f04384142b66871e15a72149218d66be2ca3b13f7e1604b0000000004847304402206b8854445fdb689929143c8daf33fa52ddee06c360073f6262ffea4db0b8b71102200b4d7a166bfa81e8f2570afcd9de338b9a0d7bc72a3962c775205933690f302901feffffff408d53f3499c6db833b4a9b19aa8cf61c95182775a0539efef9c62a0456520c40000000049483045022100c1f028354c1034e61d59999070a8ab554a97f81583d72f38c0f6b0b7a52fe8ab0220538d6fec3f35a595614602203b360730b2f13c3bd879fdadca06dd8a16b90b9d01feffffff43671a7bd5f31ee1642842027378035d73b06d446fbb1666e95638eb0d55d1c9000000004847304402203fc7529cc7a96726728a4aa6a1698fc31bad94d1eadda2a0f74ea8f22d752869022011983a3c457e5c7ffc87b576d877e6f02ab8e08dbda6a94dfbf245315a3365e201feffffff45ee4a5c7a98f315d26c1020b26576500ecae4d6a6a78b3ad169788006e7c76c000000004847304402207a60671e1d0cd3d5d7b8eb2a1b53a0014f30de45f0e379a30435a47e7f9861eb0220689af75a99876c1d1d206869dca223806c45ad64f32cc08cd624936ec6c0600f01feffffff48244290df0dccc781e7d081c731081c2e7e022176cc7b4b31fd92c1e31d970e000000004847304402201972bc346632bcd5166cecbd9d7ca29583c7ad938640d7db9f4bdc6629fff086022019135d7341ef96813a839c6cc14f47c7d2e42c262abbe8747e16c6869cf2b90a01feffffff48c28c27f8303266e0547b8c453b9823baed7a9e06105c09ba4cf65cb2bd5d2b000000004847304402205e40a09a37c939cfa6b5143a2ce596452ecbbd223400922b0001bda694f4c63602205aad66d989167c9bbca130aa489de6286390e55f9e9ef4c5c043c2f13377c7c701feffffff4b28d567f5933d5992559fb19f90115b145db32bd1b6e52d309021da8e6063cc0000000049483045022100ceb282925d7eac742085d5ac48443e9af8b72873fb7a2f96b4e196a58a4b29d7022074790a63adec4088a5d5c2bf1fa80597be0e17afc7490620163a873a2ef1855d01feffffff4d45006be4acc1bf5c69722cb744b967e615d2d35014fc82cf61c2a4905717a50000000049483045022100c6f42ccf0af44182e144aa925b631cab8d90959fa96eb0453335a970e74910d402205e99e1f1d23813e336a3c96efd6e75490f3b5d807f0f2bbc677499cc0b92f47a01feffffff4d8540fa9e580b140359e0a17aac6415ca80072f9ba26fc2b43914092f4702400000000049483045022100b42e72fdb23f4f50af0222d5e590bcc676d60858583dffc1ba8b35730e1c8eb102207cc50ecd38639100131b4c4950cedaac4c4ee37c7a6f87d3ed7fb7eb165559c101feffffff4ff26de89311f83d65a3936e06937f30a75dd50594246d910035bcbe19c0ea6a00000000484730440220425c41bc88fce16ba54f2611a54737d9b5197abc541c730711157b290486cdc6022003f967d0f98864249d80720c65e04c475cbc12c482104aa7e45a06bc9eb080b901feffffff511e169a83c0c0f8ee7163c34fa0e3b024275892419f11a2bb96d4976d3f9b4700000000484730440220136e776a7bfe3fdb5a5b8db2783452ed7cf1fe3c89ec001ed69455a082337e49022057e7dc0ace7ae100a2f2c26291cfe80352b34dfd9269d07468ee2dfba13fc02001feffffff52325adf85f74f38f467bc3a99657f322988add8aebb371bd080088efb95836f000000004847304402201fafc46f92d80a9b4f71a15113ae8e8182dcaa09cff63645db5b858044f329730220160082cc1a3bb262458a204040c3ecc23b276c4558ea095c1b66e20a4004e26b01feffffff532ff452f8423507348c542063deb6f257de711237ff8d718143358128e2c6470000000049483045022100d8dfe5557eae68e8b3da5cc787b14e85fb4d10d2c8a80eda12e69b807319ff9902200b104ae561f1d9c4f0c1646327686f890aed1ea8fb1c1b411f07059517737d0001feffffff5b0d6fe54dce0515e6947f5170478cabb06d1e855365a6b7dbb0118c4450ff0b000000004847304402207fad37e344180882f9cfa3e36d036282a91467ff15fca2f24278f5fa5283b99d0220325dda0a7c35a85cb617bcac369ec0033023c221771cf02f1f877f693f1059d901feffffff5b7db5b32a8e8e8c6307a7d0afec7062637eec39670f1afb08f0b04a50fbc47400000000484730440220752cc9659edbddc78293b1947f84d2bd69e32ef4d5425d4e55df4ca74a7a962402203a755152ab6d38a7ba91f26f476d611cd9c6b27167d6e20b511c4830038d102c01feffffff5cbecf874fd1996cd4e49cd41c98a586c533eac1ebc37df92cf5a9545203f935000000004847304402203af4f03cfed41a4d8387a0859324ce3c40c953582e8848867d06d3aef096deba0220104c18b2e243cf7f076d2833c4fac30e0f5e62b58bc039cba6ce7fe47ea394a101feffffff5d015b907e23b9c5e00907013f66d258fab2f016842f0c8e69346d72b0221dd70000000049483045022100bc3e1c873f25e1a661ef81c109de1758ab13df3fc591540658c5fc05bb1e8c150220309b87661ce039899d5be3b510fcdbb9464ff8cb47af06c016390d79daa7029c01feffffff65c461a04f571b50ab4fe3e367952bfba755eec9b6ed23cb460ab3bdc873fff80000000048473044022037b231fec860afbac51e3034e1308e1873d87dc586258ad8c7ede04cf0fab97e022012eceff07cf09a2c3d2f6884ee885ff9f8e7526de8c08b54e5e538ab223bb31b01feffffff686da3cbb1a1af26c2c01793345a5fb8ee47829aa907ab95b8144fbeda1707920000000049483045022100a0d89b8331105f34528f2c9687f53897a2a14f57cde1390513b4d0fda530a4200220573800bfa5cba98af2a08fa3e87fd0142fe1db6f391a4d160f70565b1078210d01feffffff6896423421d7e1193a7b88d2fbf1eef1c46f637e7a49217c171a18852d29e8d60000000049483045022100cde87af1eb614761149aef298153c541e24ff45345f99dbef18bf2379d27f347022063115fb6b37842eb7cc4d8910ccd047635a9674e72d9418894614014c19d583a01feffffff6a0f6f77ae1d42dc96c39c620f401f32c9774f18f1a039e97b4b405b8aaa757d0000000049483045022100a82d1afe573bfaf0668b3acbec55f68bcbb58bed7b806d59837c32f3560cd1d70220198904866e0bd9d19cc465cf09e256c439ad5309caffa347b8c416443ed07a0c01feffffff6cfa0bcd2e2689498496dc4b15feb0fc535667a88005f2c88198265bb1f8f3d8000000004847304402207917043acb4879438625ace42109cc1bee16054222473d2f975b3edf27286f3602207413e93cf5e696de7c0d210dfa70cd4dd9e62e78ed86a3d99682ef8ea5c064cd01feffffff705456a54cb0b94ec15890bd957dd778581f606270a331ad5b15ef48684a5fc4000000004847304402206668503174e874bc09d999d7bc47f82a5ac47c3f1bc1c43ffa1cca74c1cde4410220616df31f268371b61d83acdfd394a7bcd8da5817174faa29b51c648786c5405a01feffffff718076a7dd771121e817b98e98f46c7f52722d6cdfca9130203fe5965f0a3c00000000004847304402200f1c2ef04cf5fceacb53724360ce3af3794d14ef8a47d4d09c8e3b95b20e48770220659021ba00a68e5f2f4053ec904cc7e65b5bd5db76ff45a9be4ba35ad1a2d0a201feffffff780ed86aeead9747bc96bf7053b02ada6ac566481763e70c29d3d00162bc7b530000000048473044022027f04c7d149ed6c9c72ce3956917444cb5f943aa95adb694ec30ef53c930cfe202206dc14b5f1d59b6724fea484501e36fe7bf40849614921cf76130ec20665f35d401feffffff7b3ad2352be9169286629dcf064fa769c23a8aabd468c30eec35a0c79b61f1f80000000049483045022100c4a61d02e54b0c0b8a9749d394d6447326bf66f3524388b8854c5585ad71704702200b0e71e178082df01e66d0bb72aad0238b0063018cae190c2f21c0fbd78a462001feffffff7fc4676bc415a467bd10d303eacd54617acfb6876945e3bf1217dfd208c6d58d0000000048473044022064ab0c92b7cb2205f1d7af0a2faa441eac041cbb892b166b8f1f060019301546022066924807801b03876a0ac1830eb355ed26c7a67b9e28fcb0b3c6dc5d3c8ca1db01feffffff80fe96eb05e5fcf89fa7e19b1a653e0b8164cba383e2d2ff5934a61c42698cb100000000484730440220515b9c588036449b326ab8d74679cf65c7fe780a03b23ba8428cf829a070abd402204c71e343cfe18e166b7259509b47dcbec0b5b29a764e4dbd29a39479ef60d34601feffffff875ea454109c4725766d372f0fe395dd4744737378b3a246094dc0db7fb6e95f0000000048473044022039167229a3f6ece80aebdfb425608c855989a0e7934abe0c4fca1175f60d46b5022069f57fb057a537cd95e5ebd6a93709e0bffde3d05bd01322f08d0fecef7c061f01feffffff87b7c1fd810834fdd892975a795b9e6c1b1aa398436ae3ecb19bce62ac11aa4e0000000049483045022100ab701a93c793c182bd54f06f80de91c03e36fa9b33b220a91d028f2196d329b5022020e23cff44abe2510b50ce0a8cab286d3ae17c59d8aebd20b42613b764a128c801feffffff88b22fca9de29db1901e9c8accbf1caf8fd4d5a37802b3bf5142038809ee3c6900000000494830450221008ade6fbaec28bf02b3914ffc62c4e0dd7da3d50b41b1054653826a38573e6c13022032d2528595fad675d3f01aad532bdd5ca64960a9cdec35822bb0e69b57fb78ba01feffffff89e4b0f44e022cf53736520aef84a324100f19f4f0862c9d2150b686e951d3740000000049483045022100e69902cff246e6ae5ae8a502aaf2ecc0f8505b8546b17fef18a6e2dde8703bc60220121b6293f7c24aad7766900a746693b9e30ef4e8cc1ca01b2ed4537b47debd2f01feffffff8e0611807aa639621ca6be13a2eda8d98c32867041f929dbbef7742c7c867db000000000484730440220710257eb2b9f5e7b9517770f81c0999a7fcd5b798d8665e0674abec0909b5bad02207bcbcebecb36661cbc8793575f62524dac431fbee3f9c02fb0d854933357694001feffffff8e77d64182b666e50377b3c9a39395735a89d2c90f5ff62024143f2c25ea51d50000000049483045022100ec5f6927e57df66eefcd1275d4236f38841466cdb29aa9ed8c6f8b8f64e0cc4302200141c090ae22c294844bd0b5179f97fd4b98cee426dfb795c3288f37f67a70e401feffffff8fe0b55ad0e150fbfe8d263c44527b967c44fd79ebbe88a09a91a4318f1c17c40000000049483045022100bbaec071109be2005be905bc0b2877286f24cfdb4d8431a31c8f57d802db31270220345e56f174738a6a191ef0a91c4cdeb686dd552d8992ea6ce7517e0ff9cafad001feffffff91ad86b51f541d480383681c4faa26575f723154ed6e39cb76e03317c8984c610000000048473044022046628accc862ea34ab15232f97505cf673d8bfd23d6316677e524e3643e92a20022078414e64419c96474fe2559c30134ac4c08b5a0617a0dc9bd1ce09e85a8df89001feffffff927673288f7c95f452e035b65c8cd46a57e58451b93dcfecfae0c33f00b4e5350000000049483045022100b9e84841140ae7b9bf08f82e014247a8c270d4073b457fbee74743c413e0b4370220292fc63652cd2fae0d1baf9c705de61478b2ec8d4623b9ecaf2aca715c1e69d801feffffff9477cc8e7dddfa7d183bfe0771def3778e7b2641996a3ea52f42d085d4007d190000000048473044022073842db3431ea57cb4aa05435648817bacb36a623e2528817e399126068fbd8b02206744687cfc5587f07d6a507eeeb2aaff45731b3dd9222c40f2b62b60e4db59b301feffffff948a1e5af04f265b29fd23700d1ac9926b5bed71ed5b2968f29abaa15036848c000000004847304402207c5440b72bc608cdf4c7fad0bccdc19d43877e31b22fe3f5873f558a6068e28c022013e3a5b0b11eeec0bfd5cc8317c8a61ccf28ce19a1b50fd7759502a350b991e401feffffff98a1cd6c74d9d42f88032e74182cfe8e71f125eb7eb1b49e8334d5b17bf4d07e00000000484730440220393955bb76c236467d92d42091a290631cbcd9ef3c3f177ace6f1ce73abe319f0220153d5c0aef39f5cea8ef53822993e374dc6d66a758d599f25d2e934d8c97769601feffffff9a7fefd1b1409dfc23d6be09dab5692cd9f6c59c98b2d7b0231f40b396999c2b000000004847304402201f9d944711c3ee35c47b68ddac1a0e1f728884847d8df788b398157de22e9bbd022005d97ceca294e96f5484420189d7a99b9850ecb2c849223ddb934c6c772e32f401feffffff9b0ed42c0446f8ea3c19b47be97f42d1a546bbd6a5a311cded5c1dd16c3606d40000000049483045022100d42b4c9c6fbcbd65d69f0967cca562227f8fbab7ca2727822eb9eb4d0ce8e77a022049d752916ee19c285675786aa04c37d7025e2cef6907f70849f55cda414f3fb501feffffff9ba78bb678f5b7a289ca37b49835bc6ad383e2089dd3711833383c0c6e6d40cb000000004847304402205d3a652a05971d324947fb9d4d15e98393262498e09a6d8fdde7422af91d341a022070e017f2edf61310cb724401a451c1d2be59175e68b49e5c1f82f20084f0b2e501feffffff9d2bdc85ec46fb0457dd41f02f5f7b203ff8c844062f3376c7f86cf2144dc6a6000000004847304402202f93a774f96364ad8fdf46132f47dde1fac4b833d1cf7c20c6c69f03c605c09702207cf7ef42d8c97b96e349d023efd9e7e0b1fd74c50561290d16f3f122e1ead8fb01feffffff9dc64c498135ebd6c025d7d43ae71120d6477bcbcd9828aebe21911ea21655c80000000049483045022100f72cd391c5dd1bc77de0605a3cb35c246a5c1cc14e7b9b3fc1cdd90fd42cfa4b022069049bca8a2f5100ada2a407a2354d04efa94573a7cd1bfa4130cde66e481a1001feffffffa0c3203666c02ea6f958408c8f2241b4d6e3a8beb9ab54736fe73621feb57ce40000000049483045022100daa9b7a48975348b41dfdf8b5e4614721fd018b950d3cec1d7009386bffddb470220522220c5f3ad8f1f19cb0eafea1aae7a3489cdd3dcb3d64f2ce75bd2066a73dd01feffffffa14e8b18777a8710e58942b56d094243151299f033cc21bb3ad3dfce2b3e77ad0000000049483045022100a9e02b9ad05da478a1cf06a235743d202d1f9e8c2e969ea8b1b7d5fe6778fd9602203880f139bf40766d264c2d7f858eb36dc2257b4cacd116cacca400645f80680401feffffffa262a97a28944d41d47c7f8788528c797d322f7abc0390c20bf22e3b835e127a0000000048473044022059a9da8cb72d3d3967ad3adcfb400ee6043ee088707424728de63cba9361da2102206ca3e6681ff149bff11135315d431e24e05aa3c794b41ef0822b8969b0d1597401feffffffaa3c2496b8237d865f81ff0bb8eb01bf2b69ee806463816ec83b60cace7a5833000000004847304402205637e4e9538fa7489e017da763bce9182c5e78492fe23d5366c0638af15c7eef022034e9a552d342053c4184cea58684ffbd0881467cd0a40f009db155275deae1c001feffffffabfc5cf05834234e1ee8a3c87c8de5d6a07f9530a09f2b34d9303ef30d8646cf0000000049483045022100a68eff499320029204dd73f707d36d65583d21ebfa063d770f55139ed546ea8102206646e141b55f506ed457f24311eeec6e302833f69cd08c9ea3086c78f82dfd3801feffffffa2d1512943366ab64e6d1749b81f993e830e5b546a87b9bd68fe0c5c865da953010000006b483045022100c686f7a4b2e8af7deca60cb20b0c626609548f5426dda6bf33207f82923e0ea202200d9c36dc490f014d0d4970ce8c18621d39b6c0c134c7e43da0f62326725598ba01210360cfa32fd05b4c3bc270fc6e8c891af45a149d34664746ffc67f5cb49c6b5f5bfeffffffad976a10bc9ebe391cee6b83191520a9d0fb62a24e969477a4cc6dd26b29e4da000000004847304402203385b46d676be7f898b316fdcf56a8521bda2224ae891b48be05cd880ae7a0e502201f6de4117623336529e445e0943c519e80150cf0d4a5b1427766d06db2d7a26b01feffffffadd486a6d94629b19713d723301b135c11af92b5ed69e6f0b9ed07d417078b2400000000484730440220575a03c7a331f65defeab66ab1404503a700ece0780889266bd1866ff806096b022069348e446f67f551949267b49861e96904e0b47c75a220aa1cd7ffec3b8fa7d801feffffffb04574d6517ca90a26e07a749ebcde23f67f7ef8a594b23e699fa084529d96e80000000049483045022100948f7ec200d121bdea79b29bf1c608c6d5e007aec62acfb3a5cbcae84ce457490220431802ca646caacfeaf1827e1ceb70f07752413c65bb50db24957166603bab3f01feffffffb2197245ddc53b189c18d05d167210fd6291c6b9116862144c3654da5bb55d06000000004847304402204def3dfa143d5887b4075f45d92a91df9825f1e08bee1c29901c1f117ab30df302207eff300c5347d13f531ec36789a6f4f66c07149ff4c86f21107d0f21dc400d9e01feffffffb4b953583df750085d727027674f69c6ba63513915941e42924a462d5bc15c9b0000000049483045022100a267fdd914d9ce78ca819e08312fb2b3c0f9c395bd30d22b26ea8c6a8af3618f0220548b821abd8f1f1fec1db25fbc277cbfc5840e47185a830174a97b74645af60401feffffffb7f5149ac38efb591ad8c3a46ec9e979d5647c964190a135342435b55484dd570000000049483045022100d1d05a271a8516b9357b0e3e73d5413aa138ae9a10c1ccbe30ba7ef15994c24202203df3584a99260ff637db9515361b258e6cf7fbbfa15278b29173dd2c4f25264901feffffffbfc02225e0c5351bbeb63adb8e3b7859752363a5b85f5b2a6da5240a449e8065000000004948304502210082c85c2c7d8316e9e3cfba9f5bafcdbbeaf0509c3e896bd4121f19e4b82cbfe6022070d7650714cb1975215fe109b8f1da2eea866abbdf05e487eb1d75e12776e52d01feffffffc0def09bb3cbf791c52764cceadd389199be9d7603cc3d6d213ba45ffc98518d0000000049483045022100841df35265191f063a9ad2414ec9b36fe39ef9ae13c9fde0e82d67ec9bc654e302206dd8523cf58547ab425ea55a8d879e75d31558701d4f57d76b0f67736ca5e5ea01feffffffc5c9957c3a3e03204e603c313368d3c01206320beddfd28b850fd17b09a61a410000000049483045022100c3467add04b9e313238376a0d3867bc5b59fca8b2eb76bcc18fbc0b0805e63960220578a2cf379848771a9b13e12559cd130853c7f02d9ab497a74f3305aeaf7b00b01feffffffc64396e634d716a5ae280d9fd821507239d7b25a812eea6751254e462c8a73a50000000048473044022040e5e55b23846cbd5e0af588564e5501d58cf2a18eb485c562352fe2801230d002200c70fcf828a81c1cfb856a2d2cc9de21f2564e6080b2f84f44c65b679f49d09c01feffffffc69c9cdd6825a657be1a06008f73b78cf185a9d195ba771451ca1ec09ce54d4f0000000049483045022100e10488858800081f775278c5d844ba2c2cda71ebb4a822d028637191e13efb2602203f7e7f580dad9d7ed1d4cda38222095d8377917c7d4e90c8abb4b9bf3a40975c01feffffffca6112fdc1db1a441961f6eb62b492c1397732cc5519d40f6aa335612f42d39c000000004948304502210097ed9842254112825356823d7365ce8d0bbc973702be7f25951e21f48fcd6e5702203a0aab0ef62926936815e1d9490b335359f766d0ace9b858d59bbd8ba26cb1d901feffffffcb15dbc245dec1ef8cb8e25ef11921ca804c023e6ad803ebcb2a7b98380b60b30000000049483045022100bb9285cab4a68dcb68b46687b59ab1769a0b5aa1ea6f45488e189f58e698321f02205e6499101ee3b0f005e6d3ba151282c236a79d32488e16b1867c6e70c8f7f51001feffffffcfe47e6ce0780c4594a2d1b76a2906c0a9ea32d39a73c244aa9d5d8dea67248c0000000049483045022100a4681709fd0b79ceaddd9d695bd5c740391970a1feff2dd3a90674d20ca95a2a022076dbad3df0c4f8158eba4a087650feeeb1736b5a8b03aef15f698be4fc668abd01feffffffd0a4d502c22cea7da0d1a3cf99aef598b74fad19a6de35f21c6fd0d1b8cf275600000000494830450221009d8a22fe94f18d0a65e8f188b702b4023948e236ac2efd36bfb20d2054e1d55402201383ab2ed9465790eb9496483f10f54e40ae201fb98358cbdd71a0e650ad1b9701feffffffd25452b8575cafca10255179f95c8c66e255329220b7ff645af522af7b8038320000000048473044022013581d5e4794efb6df6dbe04339478ecf019493814d9d52390b6cc790c998762022006aef7acc10019a8cfd7ae99e11e5877a9cf1a5a6ef084549815435f7b681e1801feffffffd3922dfd1a65216bbcd4646d0cbcfa70cfe587775cf4c673043c57061f48d763000000004847304402200bc9095368e4409c7debdf0871f18af1d36e1a4851e4b948a1ce362926550611022034fb19afe76cf133e4bb561fcd3cfe7f3d49743fd75022c124b6e45bd9f503cd01feffffffd75c777645d534009bc8e7b2c0b58a78cd63f41f47f6cd30868aeaf9b55e477000000000494830450221008f4a11d94e97f02e3226c509c70a3582a280ea3bf33309ec392ceeda7a59567e022044bf0d858442058b7c5fd8c73e47287f9283e957fdb39fc005cef70e22b0c07001feffffffd8f837530faf0d9b50efe1d79aed453b11916d565a2b9c40a380a85f0be2af6b0000000048473044022065ac672cfaffe8f8d02fb8064cb54f4d335e7af222452ee71c9b249602cbfcac02202cdb7e8cc05c52db51b71a05258abaf0810d61199eff9ee0ea37d8c373a876ab01feffffffdbce76e284668c829366dafd00ae4884ea39b2aa597cc1b4d2a37991a9b2ea56000000004847304402204480dd6aac1167bb49f32fc04feaa3a7c19ad6cba48479cb72dc7d0bd71ca279022036e654a48cadceba49dbb097892ce5d90d8f082460fb18776d353e9d832ba83301feffffffe481d9493d67997104c12972b7c8a73fb87b16e228665bb784436fc0f58d7e66000000004847304402203645fe9770f3851392a85b8dc9dd405ab13fd8434122f6763de459129527fd0702204d240e91298a1487d496feb320dee028df7dbb5c9236e5d62a4964347f97279001feffffffe7a22d3d87255e4adaab9a6fd8a72320299a6902426424aa8b2b89b7c3b0c0950000000049483045022100b362e030a6739f020622f0f7e34c48fc4ff6147ed88a194a37a8a04c8e42822a0220755bcc63667eb4cbcd52108d27245765176c6c5b2e9a77013aea4d7474c0a1ec01feffffffe80ac9635b6bd91c1935eca6df80876ac8cdc87a2b91e925cfdcc0f06059b2e5000000004847304402204a2b8c311a11920eef4d64e786c5f26ed82d4c1562f2cc0e73fd5a5374c7061e02203693e77f88372a335d1463df4edd062b6dfe2bb895d56d58f3a404c27757378501feffffffedad3357a1a9aeeb8c2771cc6f284db92a2aa31f458e35bb270216015bb0edd40000000049483045022100abad2415b7c6ca9ccf3c52b4008c4d531360f2d6541d9025ec2caa4d764b46da022054f5d2833704686a860fcf978313a3c6c61f16e9a1cf84a3e4ac76c8950dabb701feffffffee85afefc31a99a4616bfb228e1f48691976b900ecdfe838e1310bf5b33fadcf000000004847304402200f7afc12d43432f5303b892b08417743d43a05bf938719428a88c85e255e5b0d02201a12cc706286a1c9329f9e37e62143866563b3773769def6912494a73c17a9f201fefffffff13e4784de0564595f3b4cce57ec0d8a4b72a798feb65f5fbca5b26a3a91d0760000000049483045022100fd3c9b2e02db889ae2bd43537a308a87a7d701bac19083e3a985a93674239e2802206dd36da12f3f2b222ce4387cb91e1098c5f93d25ce95fed0e5d21e6724af554401fefffffff205212771fd3ca5a68340fa307810e44315ae02464b5d8a235ba6bca691bd710000000048473044022062aa2571a91a7e06f0e96570bb3a348296ce7b756ceed48fe69be91f94a6c5c70220631885aa6fc967e40cd1820c83310143884e175227c5434e33b89245598d5e5c01fefffffff31cea9351fddc36393fa996962e204c461a34ff1c6ad243b3a4902440f165da000000004847304402203355527ee222e6bc756ef30c6ad687a21109a5175b1eb27592e9e1938b9e8f850220206ea10896e9e307ee73d33813048fece04bbeda702e11cae8bd61297b73590601fefffffff3c67e78777cc42ae2834bcf5dce5493fbcfcc6e0aabd7608cf4f9c936a37f49000000004847304402207cd40b7d6ca2b869d3f00c0babb484c7a2896c080c593767e0a293acd1505a9c02203a2f8c191b20fe4fb08958b3bb20411834d17f7fa075deb8b2272d22112ec8b001fefffffff3ddc14df664f6e4f59b1f1e25241a61fc69f13125ea5a67edbd03b37d332eb50000000049483045022100a40f81d4e1791d0253a2484656c27994d1e42aaaf77995e9fa6e0eb02480bde30220669c0bfbd0772ec1ad8ca9357eb3ca1100d7b40ed97bb34e23c8cecb42511c7001fefffffff614bd5d83278ad95d8c5bf6fefe59b3675e832cc1c2349d7952aa734fd20283000000004847304402207709f2089f820012e76eaa6221aa0b9776cbdcd0b0b458d400c7c1ca9ed7eedb02200de75bbdae8100b4b27e5deb164e13d596b6661248be45d817b573cdf8cb2c7c01fefffffff67ef42d75fc5d36ff32ab40f5c9f88f279a1173ee1db227a4706aa0480d66ab0000000049483045022100b09aa2cca247052451537f64801ea561506bff82794a8870c077c32c69d0bebc022013bceb4edd8f126af25c07a74d5c16935b0e916cdcc25d49ee335c430400eb2601fefffffff69f0798ab6de485dcfe72391f4cbb1e5f4d39ee8f852b80fd4bb730eabd8e9300000000494830450221009d91a34a7294250ac5b31bc86a2f7ceac8ce79e49d8ac7b3b02ad0cc278f16d102207b9ea41b03e72746a67e7bedfd1cad7f5055a915abdabc13f8e51815f29e983601fefffffff8dd75e7c674cf7bf15f42fcb1256ef4f16b96e0ff6a359bc24c07ba734f09a30000000049483045022100cf9283df82dc2c0d26c2fc9349d16faf2c961919066798705da4afe6fbf27af202207740172e195f5713eff2aeb39d12923625401dea6a0c4b4aa19be3b973c9077601fefffffffa0c47583d4c6f18e12b93764ccf57d2430a52bdd0ceb611924a79c82daf48b9000000004847304402207b46c5dfb4e65c5f91f9770acca2a1ad24a4cdd7e4f27ac9c5e55b14f8d7c00202203b17ab29bd9be1559d550cae9f79728a644682a8aab5db1a1cc3432bad159f4701fefffffffa5ca0440f302bcf118946714dba6e81036e48477ff3a315084fe682aea6d1d50000000049483045022100929668780086aa4c8945fc6d9aaa340ee8ae2807ff2f6a89623ffa102d2bdf6d0220318d3e075a82195af58a66b47c8d62849d69ed1da2e07402d89440a6a77b63ba01fefffffffef369694bf0493161762e49d7ca16f1ba600250d801a848d0ca8d3f2d677d4a0000000049483045022100f7dd5f966156c81a1d2aa694befa6b19e35aa8d7fa199c37a803cd382836fdbe0220669d85a44632a8ea6093b783693c4626ad8c71be4b82b027c4cdfa63682a9a1601feffffff02c5490f00000000001976a9146843838a0aa11686cd0c01fbf470c9c5f302249488ac40420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"
Response:
a44feb2e788d0332e283d8ca69c6a20999944dccac93246cbf9b36d841b08c95getrawtransaction “transaction_id” ( verbose )
The getrawtransaction method returns the raw transaction data.
If verbose=0, the method returns a string that is serialized, hex-encoded data for transaction_id. If verbose is non-zero, the method returns an object with information about transaction_id.
::: tip
This method relies on the txindex runtime parameter, which is enabled by default on all KMD-based chains. Disabling txindex will cause this method to malfunction.
:::
| Name | Type | Description |
|---|---|---|
| “txid” | (string, required) | the transaction id |
| verbose | (numeric, optional, default=0) | if 0, the method returns a string in hex; otherwise, it returns a json object |
verbose is not set, or set to 0)| Name | Type | Description |
|---|---|---|
| “data” | (string) | the serialized, hex-encoded data for ‘txid’ |
verbose > 0)| Name | Type | Description |
|---|---|---|
| “hex” | (string) | the serialized, hex-encoded data for ‘txid’ |
| “txid” | (string) | the transaction id (same as provided) |
| “version” | (numeric) | the version |
| “locktime” | (numeric) | the lock time |
| “expiryheight” | (numeric, optional) | the block height after which the transaction expires |
| “vin” : [ … ] | (array of json objects) | |
| “txid” | (string) | the transaction id |
| “vout” | (numeric) | |
| “scriptSig”: { … } | (array of json objects) | the script |
| “asm” | (string) | asm |
| “hex” | (string) | hex |
| “sequence” | (numeric) | the script sequence number |
| “vout” : [ … ] | (array of json objects) | |
| “value” | (numeric) | the value |
| “number” | (numeric) | index |
| “scriptPubKey” | ||
| “asm” | (string) | the asm |
| “hex” | (string) | the hex |
| “reqSigs” | (numeric) | the required sigs |
| “type” | (string) | the type, e.g. ‘pubkeyhash’ |
| “addresses” : [ … ] | (array of strings) | |
| “address” | (string) | the address |
| “vjoinsplit” : [ … ] | (array of json objects, only for version >= 2) | |
| “vpub_old” | (numeric) | public input value |
| “vpub_new” | (numeric) | public output value |
| “anchor” | (string) | the anchor |
| “nullifiers” | ||
| “hex” | (string) | input note nullifier |
| “commitments” : [ … ] | (array of strings) | |
| “hex” | (string) | output note commitment |
| “onetimePubKey” | (string) | the onetime public key used to encrypt the ciphertexts |
| “randomSeed” | (string) | the random seed |
| “macs”: [ … ] | (array of strings) | |
| “hex” | (string) | input note MAC |
| “proof” | (string) | the zero-knowledge proof |
| “ciphertexts”: [ … ] | (array of strings) | |
| “hex” | (string) | output note ciphertext |
| “blockhash” | (string) | the block hash |
| “height” | (numeric) | height of the block |
| “confirmations” | (numeric) | a confirmation number that is aware of dPoW security |
| “rawconfirmations” | (numeric) | the raw confirmations (number of blocks on top of this transaction’s block) |
| “time” | (numeric) | the transaction time in seconds since epoch (Jan 1 1970 GMT) |
| “blocktime” | (numeric) | the block time in seconds since epoch (Jan 1 1970 GMT) |
./hush-cli getrawtransaction "a44feb2e788d0332e283d8ca69c6a20999944dccac93246cbf9b36d841b08c95"
Response:
01000000660aeb1fef3f0f6e8e9598a2f4b434466b5ccb95e49aa7c4286bc5392d43fa1f2800000000484730440220234b370cddf91b27e172cb5d6257a9807e63cf680a644229147b39d87e597875022047a58509a11b190107a9ff6e08143bd0d450db233518ed26f123bd739576e9c201feffffff0d204965060600f1e79bfd183e7ee1b5b9b61c6379d6c95984cb7cdf79231c4c000000004847304402202ffed5ef972b01ec4290343ab0bc4cff989d0047f2cbc9e8b69f0f3102824c0e02203c7e3214344e6ac430e4f996a8980e7d9172ea1e8c0c238ba32b8930f4d4119301feffffff0d3eba8ce5b6b6ee7d2e804be57dbe4544d7b7169caf5afd6f207c1275e8977e00000000484730440220096fdd062535f200897de2f2dfb7d782499dc5fc24d8e06805eebed6ec125c07022077e4379409bd7c9052608e8cd52cd83b0c9314c623d9b85012eab28e10f8c13601feffffff04f8b24c1eb3aeb01cc483a5b6922eb341da17fd42c944b0bb18998c04fea67e000000004847304402204a8f45abf51333ec7c4491cd5750e5d46785475ebdb0a13a6a946711f17483a9022075805ee9f2130c3938e273c280b6b14b27640349b537b55348c40ede1508938f01feffffff0360b074597abb6e32c319078ea5f83cdfc85d5c892c0388893d8b66876c077b000000004948304502210089c7919c6e7412a1569434f74caf7110bbb0341361384067265c142c8e033b2d02203d5eaa583d727fad487bbb689bf433bac32d907e707043e8f96f8c50fd3480d501feffffff0e2ae757c446029f5dbea36926883744a2d3fe8ee05381c2b4311e7d58057fd40000000049483045022100a0672d882511b01696192965175f3827e65ef8d45b3217b563d0f97f3cab512602205c568b5c1eda0c149976380b38d2f93ee384500bb5eecf6e9f3f2101d649eace01feffffff149c5bbedff321a7810d5db264829ffa5529a4f29ca3a452b0543736339bf0260000000049483045022100981f7f5210e17e1c73fe5083ca7b29a5b1a9dfbbf5474c109069a4b3eecbb5c5022065e21331260c718788b72902da250418b0091537a540e8f6152ae097632637da01feffffff1f9e6624bb5185f0b51d36a3a94982f0d8a325bdf81db90bf67945354a6f40c6000000004847304402204391d39a88d2f8427396bbbca508bcdb3b6897c25bee4c68d357b878419285a602205da8f54aec5bb9253aeaa9b4c4a1a8a2fe602e894422da0279f21f9799a3540201feffffff22e752f465434c0563a7e0b9d104b8633bdbd6073bbe61d17dee0d53ac8220430000000049483045022100d5a4b70ce4542e30a7cfb09ea259405ee202f99b556c88604b06a86419b2e72602202417376668f93e44b404ec2bfe6e797b699367604de296377dfc6944afce722901feffffff2780816ab4fd0177dfff1a98b7783bbefe8d08f339c964d2438b7e73c8ce614c00000000494830450221009d1878ce69f3a438748bcc73de00d531492cd36d2bf7a292bc5bbf67fcf6c774022066e1705510ed5a5177e78a71ba9891d69e11a7a3bc28599d5d18c29c2033a00e01feffffff2da12ef31d8678120d4961c9090035ae9e8f48dcfe4e2f461fb10437473c2bc90000000049483045022100fe0f6284ddb97b4595d77cf7ad5ef4f5caa67cb7c4b6e6ee9812bac076787377022032991f85e1962140673af04a85a442bca3df931ca52c365d3cf24e79b782b2d101feffffff39a00efcf7f678ecf0252ee2b4998a43121aaad28abe518be06a830fd34ae24e0000000048473044022038759690b62c95f80a54d3bde28abdf7dddae992ee4a18c511a4d442da67d758022016aa7dba3da26aa7531731222a0f66cec25c5026cc4903b51dd3fe5483af4cc401feffffff3c5b78d98b3edf510b003cc5723270854313d51ad40859ba08a622f3a269a66900000000484730440220141e545e4ea0c27a630972d474b7d95dd2c9da1a129a7e680016e4ad70c5579102207a3384d8c988bfa526bea0f7cebfb8a8d81ae4b7272d23e83268791fc8eba2bf01feffffff3ca10423750150708e817fe0020a7fd0a687a0456158db659af112dfefefa299000000004847304402205c4e4f8934cea71191f87208bbbaae36b2b3ac4f7282256cc05446cdd1ccc0980220038db0a46e2b06fd61acdf1b47a5de87b787a62a1b65db823c904efa6223129b01feffffff4005c2dd439c35e3f04384142b66871e15a72149218d66be2ca3b13f7e1604b0000000004847304402206b8854445fdb689929143c8daf33fa52ddee06c360073f6262ffea4db0b8b71102200b4d7a166bfa81e8f2570afcd9de338b9a0d7bc72a3962c775205933690f302901feffffff408d53f3499c6db833b4a9b19aa8cf61c95182775a0539efef9c62a0456520c40000000049483045022100c1f028354c1034e61d59999070a8ab554a97f81583d72f38c0f6b0b7a52fe8ab0220538d6fec3f35a595614602203b360730b2f13c3bd879fdadca06dd8a16b90b9d01feffffff43671a7bd5f31ee1642842027378035d73b06d446fbb1666e95638eb0d55d1c9000000004847304402203fc7529cc7a96726728a4aa6a1698fc31bad94d1eadda2a0f74ea8f22d752869022011983a3c457e5c7ffc87b576d877e6f02ab8e08dbda6a94dfbf245315a3365e201feffffff45ee4a5c7a98f315d26c1020b26576500ecae4d6a6a78b3ad169788006e7c76c000000004847304402207a60671e1d0cd3d5d7b8eb2a1b53a0014f30de45f0e379a30435a47e7f9861eb0220689af75a99876c1d1d206869dca223806c45ad64f32cc08cd624936ec6c0600f01feffffff48244290df0dccc781e7d081c731081c2e7e022176cc7b4b31fd92c1e31d970e000000004847304402201972bc346632bcd5166cecbd9d7ca29583c7ad938640d7db9f4bdc6629fff086022019135d7341ef96813a839c6cc14f47c7d2e42c262abbe8747e16c6869cf2b90a01feffffff48c28c27f8303266e0547b8c453b9823baed7a9e06105c09ba4cf65cb2bd5d2b000000004847304402205e40a09a37c939cfa6b5143a2ce596452ecbbd223400922b0001bda694f4c63602205aad66d989167c9bbca130aa489de6286390e55f9e9ef4c5c043c2f13377c7c701feffffff4b28d567f5933d5992559fb19f90115b145db32bd1b6e52d309021da8e6063cc0000000049483045022100ceb282925d7eac742085d5ac48443e9af8b72873fb7a2f96b4e196a58a4b29d7022074790a63adec4088a5d5c2bf1fa80597be0e17afc7490620163a873a2ef1855d01feffffff4d45006be4acc1bf5c69722cb744b967e615d2d35014fc82cf61c2a4905717a50000000049483045022100c6f42ccf0af44182e144aa925b631cab8d90959fa96eb0453335a970e74910d402205e99e1f1d23813e336a3c96efd6e75490f3b5d807f0f2bbc677499cc0b92f47a01feffffff4d8540fa9e580b140359e0a17aac6415ca80072f9ba26fc2b43914092f4702400000000049483045022100b42e72fdb23f4f50af0222d5e590bcc676d60858583dffc1ba8b35730e1c8eb102207cc50ecd38639100131b4c4950cedaac4c4ee37c7a6f87d3ed7fb7eb165559c101feffffff4ff26de89311f83d65a3936e06937f30a75dd50594246d910035bcbe19c0ea6a00000000484730440220425c41bc88fce16ba54f2611a54737d9b5197abc541c730711157b290486cdc6022003f967d0f98864249d80720c65e04c475cbc12c482104aa7e45a06bc9eb080b901feffffff511e169a83c0c0f8ee7163c34fa0e3b024275892419f11a2bb96d4976d3f9b4700000000484730440220136e776a7bfe3fdb5a5b8db2783452ed7cf1fe3c89ec001ed69455a082337e49022057e7dc0ace7ae100a2f2c26291cfe80352b34dfd9269d07468ee2dfba13fc02001feffffff52325adf85f74f38f467bc3a99657f322988add8aebb371bd080088efb95836f000000004847304402201fafc46f92d80a9b4f71a15113ae8e8182dcaa09cff63645db5b858044f329730220160082cc1a3bb262458a204040c3ecc23b276c4558ea095c1b66e20a4004e26b01feffffff532ff452f8423507348c542063deb6f257de711237ff8d718143358128e2c6470000000049483045022100d8dfe5557eae68e8b3da5cc787b14e85fb4d10d2c8a80eda12e69b807319ff9902200b104ae561f1d9c4f0c1646327686f890aed1ea8fb1c1b411f07059517737d0001feffffff5b0d6fe54dce0515e6947f5170478cabb06d1e855365a6b7dbb0118c4450ff0b000000004847304402207fad37e344180882f9cfa3e36d036282a91467ff15fca2f24278f5fa5283b99d0220325dda0a7c35a85cb617bcac369ec0033023c221771cf02f1f877f693f1059d901feffffff5b7db5b32a8e8e8c6307a7d0afec7062637eec39670f1afb08f0b04a50fbc47400000000484730440220752cc9659edbddc78293b1947f84d2bd69e32ef4d5425d4e55df4ca74a7a962402203a755152ab6d38a7ba91f26f476d611cd9c6b27167d6e20b511c4830038d102c01feffffff5cbecf874fd1996cd4e49cd41c98a586c533eac1ebc37df92cf5a9545203f935000000004847304402203af4f03cfed41a4d8387a0859324ce3c40c953582e8848867d06d3aef096deba0220104c18b2e243cf7f076d2833c4fac30e0f5e62b58bc039cba6ce7fe47ea394a101feffffff5d015b907e23b9c5e00907013f66d258fab2f016842f0c8e69346d72b0221dd70000000049483045022100bc3e1c873f25e1a661ef81c109de1758ab13df3fc591540658c5fc05bb1e8c150220309b87661ce039899d5be3b510fcdbb9464ff8cb47af06c016390d79daa7029c01feffffff65c461a04f571b50ab4fe3e367952bfba755eec9b6ed23cb460ab3bdc873fff80000000048473044022037b231fec860afbac51e3034e1308e1873d87dc586258ad8c7ede04cf0fab97e022012eceff07cf09a2c3d2f6884ee885ff9f8e7526de8c08b54e5e538ab223bb31b01feffffff686da3cbb1a1af26c2c01793345a5fb8ee47829aa907ab95b8144fbeda1707920000000049483045022100a0d89b8331105f34528f2c9687f53897a2a14f57cde1390513b4d0fda530a4200220573800bfa5cba98af2a08fa3e87fd0142fe1db6f391a4d160f70565b1078210d01feffffff6896423421d7e1193a7b88d2fbf1eef1c46f637e7a49217c171a18852d29e8d60000000049483045022100cde87af1eb614761149aef298153c541e24ff45345f99dbef18bf2379d27f347022063115fb6b37842eb7cc4d8910ccd047635a9674e72d9418894614014c19d583a01feffffff6a0f6f77ae1d42dc96c39c620f401f32c9774f18f1a039e97b4b405b8aaa757d0000000049483045022100a82d1afe573bfaf0668b3acbec55f68bcbb58bed7b806d59837c32f3560cd1d70220198904866e0bd9d19cc465cf09e256c439ad5309caffa347b8c416443ed07a0c01feffffff6cfa0bcd2e2689498496dc4b15feb0fc535667a88005f2c88198265bb1f8f3d8000000004847304402207917043acb4879438625ace42109cc1bee16054222473d2f975b3edf27286f3602207413e93cf5e696de7c0d210dfa70cd4dd9e62e78ed86a3d99682ef8ea5c064cd01feffffff705456a54cb0b94ec15890bd957dd778581f606270a331ad5b15ef48684a5fc4000000004847304402206668503174e874bc09d999d7bc47f82a5ac47c3f1bc1c43ffa1cca74c1cde4410220616df31f268371b61d83acdfd394a7bcd8da5817174faa29b51c648786c5405a01feffffff718076a7dd771121e817b98e98f46c7f52722d6cdfca9130203fe5965f0a3c00000000004847304402200f1c2ef04cf5fceacb53724360ce3af3794d14ef8a47d4d09c8e3b95b20e48770220659021ba00a68e5f2f4053ec904cc7e65b5bd5db76ff45a9be4ba35ad1a2d0a201feffffff780ed86aeead9747bc96bf7053b02ada6ac566481763e70c29d3d00162bc7b530000000048473044022027f04c7d149ed6c9c72ce3956917444cb5f943aa95adb694ec30ef53c930cfe202206dc14b5f1d59b6724fea484501e36fe7bf40849614921cf76130ec20665f35d401feffffff7b3ad2352be9169286629dcf064fa769c23a8aabd468c30eec35a0c79b61f1f80000000049483045022100c4a61d02e54b0c0b8a9749d394d6447326bf66f3524388b8854c5585ad71704702200b0e71e178082df01e66d0bb72aad0238b0063018cae190c2f21c0fbd78a462001feffffff7fc4676bc415a467bd10d303eacd54617acfb6876945e3bf1217dfd208c6d58d0000000048473044022064ab0c92b7cb2205f1d7af0a2faa441eac041cbb892b166b8f1f060019301546022066924807801b03876a0ac1830eb355ed26c7a67b9e28fcb0b3c6dc5d3c8ca1db01feffffff80fe96eb05e5fcf89fa7e19b1a653e0b8164cba383e2d2ff5934a61c42698cb100000000484730440220515b9c588036449b326ab8d74679cf65c7fe780a03b23ba8428cf829a070abd402204c71e343cfe18e166b7259509b47dcbec0b5b29a764e4dbd29a39479ef60d34601feffffff875ea454109c4725766d372f0fe395dd4744737378b3a246094dc0db7fb6e95f0000000048473044022039167229a3f6ece80aebdfb425608c855989a0e7934abe0c4fca1175f60d46b5022069f57fb057a537cd95e5ebd6a93709e0bffde3d05bd01322f08d0fecef7c061f01feffffff87b7c1fd810834fdd892975a795b9e6c1b1aa398436ae3ecb19bce62ac11aa4e0000000049483045022100ab701a93c793c182bd54f06f80de91c03e36fa9b33b220a91d028f2196d329b5022020e23cff44abe2510b50ce0a8cab286d3ae17c59d8aebd20b42613b764a128c801feffffff88b22fca9de29db1901e9c8accbf1caf8fd4d5a37802b3bf5142038809ee3c6900000000494830450221008ade6fbaec28bf02b3914ffc62c4e0dd7da3d50b41b1054653826a38573e6c13022032d2528595fad675d3f01aad532bdd5ca64960a9cdec35822bb0e69b57fb78ba01feffffff89e4b0f44e022cf53736520aef84a324100f19f4f0862c9d2150b686e951d3740000000049483045022100e69902cff246e6ae5ae8a502aaf2ecc0f8505b8546b17fef18a6e2dde8703bc60220121b6293f7c24aad7766900a746693b9e30ef4e8cc1ca01b2ed4537b47debd2f01feffffff8e0611807aa639621ca6be13a2eda8d98c32867041f929dbbef7742c7c867db000000000484730440220710257eb2b9f5e7b9517770f81c0999a7fcd5b798d8665e0674abec0909b5bad02207bcbcebecb36661cbc8793575f62524dac431fbee3f9c02fb0d854933357694001feffffff8e77d64182b666e50377b3c9a39395735a89d2c90f5ff62024143f2c25ea51d50000000049483045022100ec5f6927e57df66eefcd1275d4236f38841466cdb29aa9ed8c6f8b8f64e0cc4302200141c090ae22c294844bd0b5179f97fd4b98cee426dfb795c3288f37f67a70e401feffffff8fe0b55ad0e150fbfe8d263c44527b967c44fd79ebbe88a09a91a4318f1c17c40000000049483045022100bbaec071109be2005be905bc0b2877286f24cfdb4d8431a31c8f57d802db31270220345e56f174738a6a191ef0a91c4cdeb686dd552d8992ea6ce7517e0ff9cafad001feffffff91ad86b51f541d480383681c4faa26575f723154ed6e39cb76e03317c8984c610000000048473044022046628accc862ea34ab15232f97505cf673d8bfd23d6316677e524e3643e92a20022078414e64419c96474fe2559c30134ac4c08b5a0617a0dc9bd1ce09e85a8df89001feffffff927673288f7c95f452e035b65c8cd46a57e58451b93dcfecfae0c33f00b4e5350000000049483045022100b9e84841140ae7b9bf08f82e014247a8c270d4073b457fbee74743c413e0b4370220292fc63652cd2fae0d1baf9c705de61478b2ec8d4623b9ecaf2aca715c1e69d801feffffff9477cc8e7dddfa7d183bfe0771def3778e7b2641996a3ea52f42d085d4007d190000000048473044022073842db3431ea57cb4aa05435648817bacb36a623e2528817e399126068fbd8b02206744687cfc5587f07d6a507eeeb2aaff45731b3dd9222c40f2b62b60e4db59b301feffffff948a1e5af04f265b29fd23700d1ac9926b5bed71ed5b2968f29abaa15036848c000000004847304402207c5440b72bc608cdf4c7fad0bccdc19d43877e31b22fe3f5873f558a6068e28c022013e3a5b0b11eeec0bfd5cc8317c8a61ccf28ce19a1b50fd7759502a350b991e401feffffff98a1cd6c74d9d42f88032e74182cfe8e71f125eb7eb1b49e8334d5b17bf4d07e00000000484730440220393955bb76c236467d92d42091a290631cbcd9ef3c3f177ace6f1ce73abe319f0220153d5c0aef39f5cea8ef53822993e374dc6d66a758d599f25d2e934d8c97769601feffffff9a7fefd1b1409dfc23d6be09dab5692cd9f6c59c98b2d7b0231f40b396999c2b000000004847304402201f9d944711c3ee35c47b68ddac1a0e1f728884847d8df788b398157de22e9bbd022005d97ceca294e96f5484420189d7a99b9850ecb2c849223ddb934c6c772e32f401feffffff9b0ed42c0446f8ea3c19b47be97f42d1a546bbd6a5a311cded5c1dd16c3606d40000000049483045022100d42b4c9c6fbcbd65d69f0967cca562227f8fbab7ca2727822eb9eb4d0ce8e77a022049d752916ee19c285675786aa04c37d7025e2cef6907f70849f55cda414f3fb501feffffff9ba78bb678f5b7a289ca37b49835bc6ad383e2089dd3711833383c0c6e6d40cb000000004847304402205d3a652a05971d324947fb9d4d15e98393262498e09a6d8fdde7422af91d341a022070e017f2edf61310cb724401a451c1d2be59175e68b49e5c1f82f20084f0b2e501feffffff9d2bdc85ec46fb0457dd41f02f5f7b203ff8c844062f3376c7f86cf2144dc6a6000000004847304402202f93a774f96364ad8fdf46132f47dde1fac4b833d1cf7c20c6c69f03c605c09702207cf7ef42d8c97b96e349d023efd9e7e0b1fd74c50561290d16f3f122e1ead8fb01feffffff9dc64c498135ebd6c025d7d43ae71120d6477bcbcd9828aebe21911ea21655c80000000049483045022100f72cd391c5dd1bc77de0605a3cb35c246a5c1cc14e7b9b3fc1cdd90fd42cfa4b022069049bca8a2f5100ada2a407a2354d04efa94573a7cd1bfa4130cde66e481a1001feffffffa0c3203666c02ea6f958408c8f2241b4d6e3a8beb9ab54736fe73621feb57ce40000000049483045022100daa9b7a48975348b41dfdf8b5e4614721fd018b950d3cec1d7009386bffddb470220522220c5f3ad8f1f19cb0eafea1aae7a3489cdd3dcb3d64f2ce75bd2066a73dd01feffffffa14e8b18777a8710e58942b56d094243151299f033cc21bb3ad3dfce2b3e77ad0000000049483045022100a9e02b9ad05da478a1cf06a235743d202d1f9e8c2e969ea8b1b7d5fe6778fd9602203880f139bf40766d264c2d7f858eb36dc2257b4cacd116cacca400645f80680401feffffffa262a97a28944d41d47c7f8788528c797d322f7abc0390c20bf22e3b835e127a0000000048473044022059a9da8cb72d3d3967ad3adcfb400ee6043ee088707424728de63cba9361da2102206ca3e6681ff149bff11135315d431e24e05aa3c794b41ef0822b8969b0d1597401feffffffaa3c2496b8237d865f81ff0bb8eb01bf2b69ee806463816ec83b60cace7a5833000000004847304402205637e4e9538fa7489e017da763bce9182c5e78492fe23d5366c0638af15c7eef022034e9a552d342053c4184cea58684ffbd0881467cd0a40f009db155275deae1c001feffffffabfc5cf05834234e1ee8a3c87c8de5d6a07f9530a09f2b34d9303ef30d8646cf0000000049483045022100a68eff499320029204dd73f707d36d65583d21ebfa063d770f55139ed546ea8102206646e141b55f506ed457f24311eeec6e302833f69cd08c9ea3086c78f82dfd3801feffffffa2d1512943366ab64e6d1749b81f993e830e5b546a87b9bd68fe0c5c865da953010000006b483045022100c686f7a4b2e8af7deca60cb20b0c626609548f5426dda6bf33207f82923e0ea202200d9c36dc490f014d0d4970ce8c18621d39b6c0c134c7e43da0f62326725598ba01210360cfa32fd05b4c3bc270fc6e8c891af45a149d34664746ffc67f5cb49c6b5f5bfeffffffad976a10bc9ebe391cee6b83191520a9d0fb62a24e969477a4cc6dd26b29e4da000000004847304402203385b46d676be7f898b316fdcf56a8521bda2224ae891b48be05cd880ae7a0e502201f6de4117623336529e445e0943c519e80150cf0d4a5b1427766d06db2d7a26b01feffffffadd486a6d94629b19713d723301b135c11af92b5ed69e6f0b9ed07d417078b2400000000484730440220575a03c7a331f65defeab66ab1404503a700ece0780889266bd1866ff806096b022069348e446f67f551949267b49861e96904e0b47c75a220aa1cd7ffec3b8fa7d801feffffffb04574d6517ca90a26e07a749ebcde23f67f7ef8a594b23e699fa084529d96e80000000049483045022100948f7ec200d121bdea79b29bf1c608c6d5e007aec62acfb3a5cbcae84ce457490220431802ca646caacfeaf1827e1ceb70f07752413c65bb50db24957166603bab3f01feffffffb2197245ddc53b189c18d05d167210fd6291c6b9116862144c3654da5bb55d06000000004847304402204def3dfa143d5887b4075f45d92a91df9825f1e08bee1c29901c1f117ab30df302207eff300c5347d13f531ec36789a6f4f66c07149ff4c86f21107d0f21dc400d9e01feffffffb4b953583df750085d727027674f69c6ba63513915941e42924a462d5bc15c9b0000000049483045022100a267fdd914d9ce78ca819e08312fb2b3c0f9c395bd30d22b26ea8c6a8af3618f0220548b821abd8f1f1fec1db25fbc277cbfc5840e47185a830174a97b74645af60401feffffffb7f5149ac38efb591ad8c3a46ec9e979d5647c964190a135342435b55484dd570000000049483045022100d1d05a271a8516b9357b0e3e73d5413aa138ae9a10c1ccbe30ba7ef15994c24202203df3584a99260ff637db9515361b258e6cf7fbbfa15278b29173dd2c4f25264901feffffffbfc02225e0c5351bbeb63adb8e3b7859752363a5b85f5b2a6da5240a449e8065000000004948304502210082c85c2c7d8316e9e3cfba9f5bafcdbbeaf0509c3e896bd4121f19e4b82cbfe6022070d7650714cb1975215fe109b8f1da2eea866abbdf05e487eb1d75e12776e52d01feffffffc0def09bb3cbf791c52764cceadd389199be9d7603cc3d6d213ba45ffc98518d0000000049483045022100841df35265191f063a9ad2414ec9b36fe39ef9ae13c9fde0e82d67ec9bc654e302206dd8523cf58547ab425ea55a8d879e75d31558701d4f57d76b0f67736ca5e5ea01feffffffc5c9957c3a3e03204e603c313368d3c01206320beddfd28b850fd17b09a61a410000000049483045022100c3467add04b9e313238376a0d3867bc5b59fca8b2eb76bcc18fbc0b0805e63960220578a2cf379848771a9b13e12559cd130853c7f02d9ab497a74f3305aeaf7b00b01feffffffc64396e634d716a5ae280d9fd821507239d7b25a812eea6751254e462c8a73a50000000048473044022040e5e55b23846cbd5e0af588564e5501d58cf2a18eb485c562352fe2801230d002200c70fcf828a81c1cfb856a2d2cc9de21f2564e6080b2f84f44c65b679f49d09c01feffffffc69c9cdd6825a657be1a06008f73b78cf185a9d195ba771451ca1ec09ce54d4f0000000049483045022100e10488858800081f775278c5d844ba2c2cda71ebb4a822d028637191e13efb2602203f7e7f580dad9d7ed1d4cda38222095d8377917c7d4e90c8abb4b9bf3a40975c01feffffffca6112fdc1db1a441961f6eb62b492c1397732cc5519d40f6aa335612f42d39c000000004948304502210097ed9842254112825356823d7365ce8d0bbc973702be7f25951e21f48fcd6e5702203a0aab0ef62926936815e1d9490b335359f766d0ace9b858d59bbd8ba26cb1d901feffffffcb15dbc245dec1ef8cb8e25ef11921ca804c023e6ad803ebcb2a7b98380b60b30000000049483045022100bb9285cab4a68dcb68b46687b59ab1769a0b5aa1ea6f45488e189f58e698321f02205e6499101ee3b0f005e6d3ba151282c236a79d32488e16b1867c6e70c8f7f51001feffffffcfe47e6ce0780c4594a2d1b76a2906c0a9ea32d39a73c244aa9d5d8dea67248c0000000049483045022100a4681709fd0b79ceaddd9d695bd5c740391970a1feff2dd3a90674d20ca95a2a022076dbad3df0c4f8158eba4a087650feeeb1736b5a8b03aef15f698be4fc668abd01feffffffd0a4d502c22cea7da0d1a3cf99aef598b74fad19a6de35f21c6fd0d1b8cf275600000000494830450221009d8a22fe94f18d0a65e8f188b702b4023948e236ac2efd36bfb20d2054e1d55402201383ab2ed9465790eb9496483f10f54e40ae201fb98358cbdd71a0e650ad1b9701feffffffd25452b8575cafca10255179f95c8c66e255329220b7ff645af522af7b8038320000000048473044022013581d5e4794efb6df6dbe04339478ecf019493814d9d52390b6cc790c998762022006aef7acc10019a8cfd7ae99e11e5877a9cf1a5a6ef084549815435f7b681e1801feffffffd3922dfd1a65216bbcd4646d0cbcfa70cfe587775cf4c673043c57061f48d763000000004847304402200bc9095368e4409c7debdf0871f18af1d36e1a4851e4b948a1ce362926550611022034fb19afe76cf133e4bb561fcd3cfe7f3d49743fd75022c124b6e45bd9f503cd01feffffffd75c777645d534009bc8e7b2c0b58a78cd63f41f47f6cd30868aeaf9b55e477000000000494830450221008f4a11d94e97f02e3226c509c70a3582a280ea3bf33309ec392ceeda7a59567e022044bf0d858442058b7c5fd8c73e47287f9283e957fdb39fc005cef70e22b0c07001feffffffd8f837530faf0d9b50efe1d79aed453b11916d565a2b9c40a380a85f0be2af6b0000000048473044022065ac672cfaffe8f8d02fb8064cb54f4d335e7af222452ee71c9b249602cbfcac02202cdb7e8cc05c52db51b71a05258abaf0810d61199eff9ee0ea37d8c373a876ab01feffffffdbce76e284668c829366dafd00ae4884ea39b2aa597cc1b4d2a37991a9b2ea56000000004847304402204480dd6aac1167bb49f32fc04feaa3a7c19ad6cba48479cb72dc7d0bd71ca279022036e654a48cadceba49dbb097892ce5d90d8f082460fb18776d353e9d832ba83301feffffffe481d9493d67997104c12972b7c8a73fb87b16e228665bb784436fc0f58d7e66000000004847304402203645fe9770f3851392a85b8dc9dd405ab13fd8434122f6763de459129527fd0702204d240e91298a1487d496feb320dee028df7dbb5c9236e5d62a4964347f97279001feffffffe7a22d3d87255e4adaab9a6fd8a72320299a6902426424aa8b2b89b7c3b0c0950000000049483045022100b362e030a6739f020622f0f7e34c48fc4ff6147ed88a194a37a8a04c8e42822a0220755bcc63667eb4cbcd52108d27245765176c6c5b2e9a77013aea4d7474c0a1ec01feffffffe80ac9635b6bd91c1935eca6df80876ac8cdc87a2b91e925cfdcc0f06059b2e5000000004847304402204a2b8c311a11920eef4d64e786c5f26ed82d4c1562f2cc0e73fd5a5374c7061e02203693e77f88372a335d1463df4edd062b6dfe2bb895d56d58f3a404c27757378501feffffffedad3357a1a9aeeb8c2771cc6f284db92a2aa31f458e35bb270216015bb0edd40000000049483045022100abad2415b7c6ca9ccf3c52b4008c4d531360f2d6541d9025ec2caa4d764b46da022054f5d2833704686a860fcf978313a3c6c61f16e9a1cf84a3e4ac76c8950dabb701feffffffee85afefc31a99a4616bfb228e1f48691976b900ecdfe838e1310bf5b33fadcf000000004847304402200f7afc12d43432f5303b892b08417743d43a05bf938719428a88c85e255e5b0d02201a12cc706286a1c9329f9e37e62143866563b3773769def6912494a73c17a9f201fefffffff13e4784de0564595f3b4cce57ec0d8a4b72a798feb65f5fbca5b26a3a91d0760000000049483045022100fd3c9b2e02db889ae2bd43537a308a87a7d701bac19083e3a985a93674239e2802206dd36da12f3f2b222ce4387cb91e1098c5f93d25ce95fed0e5d21e6724af554401fefffffff205212771fd3ca5a68340fa307810e44315ae02464b5d8a235ba6bca691bd710000000048473044022062aa2571a91a7e06f0e96570bb3a348296ce7b756ceed48fe69be91f94a6c5c70220631885aa6fc967e40cd1820c83310143884e175227c5434e33b89245598d5e5c01fefffffff31cea9351fddc36393fa996962e204c461a34ff1c6ad243b3a4902440f165da000000004847304402203355527ee222e6bc756ef30c6ad687a21109a5175b1eb27592e9e1938b9e8f850220206ea10896e9e307ee73d33813048fece04bbeda702e11cae8bd61297b73590601fefffffff3c67e78777cc42ae2834bcf5dce5493fbcfcc6e0aabd7608cf4f9c936a37f49000000004847304402207cd40b7d6ca2b869d3f00c0babb484c7a2896c080c593767e0a293acd1505a9c02203a2f8c191b20fe4fb08958b3bb20411834d17f7fa075deb8b2272d22112ec8b001fefffffff3ddc14df664f6e4f59b1f1e25241a61fc69f13125ea5a67edbd03b37d332eb50000000049483045022100a40f81d4e1791d0253a2484656c27994d1e42aaaf77995e9fa6e0eb02480bde30220669c0bfbd0772ec1ad8ca9357eb3ca1100d7b40ed97bb34e23c8cecb42511c7001fefffffff614bd5d83278ad95d8c5bf6fefe59b3675e832cc1c2349d7952aa734fd20283000000004847304402207709f2089f820012e76eaa6221aa0b9776cbdcd0b0b458d400c7c1ca9ed7eedb02200de75bbdae8100b4b27e5deb164e13d596b6661248be45d817b573cdf8cb2c7c01fefffffff67ef42d75fc5d36ff32ab40f5c9f88f279a1173ee1db227a4706aa0480d66ab0000000049483045022100b09aa2cca247052451537f64801ea561506bff82794a8870c077c32c69d0bebc022013bceb4edd8f126af25c07a74d5c16935b0e916cdcc25d49ee335c430400eb2601fefffffff69f0798ab6de485dcfe72391f4cbb1e5f4d39ee8f852b80fd4bb730eabd8e9300000000494830450221009d91a34a7294250ac5b31bc86a2f7ceac8ce79e49d8ac7b3b02ad0cc278f16d102207b9ea41b03e72746a67e7bedfd1cad7f5055a915abdabc13f8e51815f29e983601fefffffff8dd75e7c674cf7bf15f42fcb1256ef4f16b96e0ff6a359bc24c07ba734f09a30000000049483045022100cf9283df82dc2c0d26c2fc9349d16faf2c961919066798705da4afe6fbf27af202207740172e195f5713eff2aeb39d12923625401dea6a0c4b4aa19be3b973c9077601fefffffffa0c47583d4c6f18e12b93764ccf57d2430a52bdd0ceb611924a79c82daf48b9000000004847304402207b46c5dfb4e65c5f91f9770acca2a1ad24a4cdd7e4f27ac9c5e55b14f8d7c00202203b17ab29bd9be1559d550cae9f79728a644682a8aab5db1a1cc3432bad159f4701fefffffffa5ca0440f302bcf118946714dba6e81036e48477ff3a315084fe682aea6d1d50000000049483045022100929668780086aa4c8945fc6d9aaa340ee8ae2807ff2f6a89623ffa102d2bdf6d0220318d3e075a82195af58a66b47c8d62849d69ed1da2e07402d89440a6a77b63ba01fefffffffef369694bf0493161762e49d7ca16f1ba600250d801a848d0ca8d3f2d677d4a0000000049483045022100f7dd5f966156c81a1d2aa694befa6b19e35aa8d7fa199c37a803cd382836fdbe0220669d85a44632a8ea6093b783693c4626ad8c71be4b82b027c4cdfa63682a9a1601feffffff02c5490f00000000001976a9146843838a0aa11686cd0c01fbf470c9c5f302249488ac40420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000
Command:
./hush-cli getrawtransaction "3ac97fdd33c713857c1aac8de58cee5d51c768619602b969db9c752e65b28d69" 1
Response:
{
"hex": "0400008085202f890193b9bc75f8d057088c61a832cbbef4e4e6792eefce990bc77adc65056eb509eb010000006b483045022100bd390bb79971e15054cd203098d9109c0dac0ca20413ba5d9bfda66095b80ae902204d9afc50892fa13df30131a3f1fdbf7d1426307599c48cdf3069eb80de99660b012103ab19ae57aa6e013a660f82b5ffd1434d28c7a15f14c0b2eb40dae614e00b0374feffffff0220cbce3b280000001976a9140a11a6cd3eb3cc4005f6f8d1e8bfd47be9e99c6188ac402a41510d0000001976a914a90b2782f35e63d9d2a0f57ac37baa4d9869d7b488ac1b838a5cfa5b13000000000000000000000000",
"txid": "3ac97fdd33c713857c1aac8de58cee5d51c768619602b969db9c752e65b28d69",
"overwintered": true,
"version": 4,
"versiongroupid": "892f2085",
"locktime": 1552581403,
"expiryheight": 1268730,
"vin": [
{
"txid": "eb09b56e0565dc7ac70b99ceef2e79e6e4f4becb32a8618c0857d0f875bcb993",
"vout": 1,
"address": "R9kXMEiPQrFrDgNtnc7nYAQsDmLRXF2F5n",
"scriptSig": {
"asm": "3045022100bd390bb79971e15054cd203098d9109c0dac0ca20413ba5d9bfda66095b80ae902204d9afc50892fa13df30131a3f1fdbf7d1426307599c48cdf3069eb80de99660b[ALL] 03ab19ae57aa6e013a660f82b5ffd1434d28c7a15f14c0b2eb40dae614e00b0374",
"hex": "483045022100bd390bb79971e15054cd203098d9109c0dac0ca20413ba5d9bfda66095b80ae902204d9afc50892fa13df30131a3f1fdbf7d1426307599c48cdf3069eb80de99660b012103ab19ae57aa6e013a660f82b5ffd1434d28c7a15f14c0b2eb40dae614e00b0374"
},
"value": 2300.0,
"valueSat": 230000000000,
"address": "R9kXMEiPQrFrDgNtnc7nYAQsDmLRXF2F5n",
"sequence": 4294967294
}
],
"vout": [
{
"value": 1728.021,
"interest": 0.0,
"valueSat": 172802100000,
"n": 0,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 0a11a6cd3eb3cc4005f6f8d1e8bfd47be9e99c61 OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a9140a11a6cd3eb3cc4005f6f8d1e8bfd47be9e99c6188ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": ["RACRytPnrER2Mae5tKhnXnW5FqJSxLX5FY"]
}
},
{
"value": 571.978,
"interest": 0.0,
"valueSat": 57197800000,
"n": 1,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 a90b2782f35e63d9d2a0f57ac37baa4d9869d7b4 OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a914a90b2782f35e63d9d2a0f57ac37baa4d9869d7b488ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": ["RQh1dxD25pU2NbhprGTMUsiwPzw1GJBeah"]
}
}
],
"vjoinsplit": [],
"valueBalance": 0.0,
"vShieldedSpend": [],
"vShieldedOutput": [],
"blockhash": "0d1b5c0a59353f4290c52075cffadb32aeec6a1cdec9fa5625f9206ca6417a2f",
"height": 1268711,
"confirmations": 1,
"rawconfirmations": 3,
"time": 1552581666,
"blocktime": 1552581666
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getrawtransaction", "params": ["3ac97fdd33c713857c1aac8de58cee5d51c768619602b969db9c752e65b28d69", 1] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"hex": "0400008085202f890193b9bc75f8d057088c61a832cbbef4e4e6792eefce990bc77adc65056eb509eb010000006b483045022100bd390bb79971e15054cd203098d9109c0dac0ca20413ba5d9bfda66095b80ae902204d9afc50892fa13df30131a3f1fdbf7d1426307599c48cdf3069eb80de99660b012103ab19ae57aa6e013a660f82b5ffd1434d28c7a15f14c0b2eb40dae614e00b0374feffffff0220cbce3b280000001976a9140a11a6cd3eb3cc4005f6f8d1e8bfd47be9e99c6188ac402a41510d0000001976a914a90b2782f35e63d9d2a0f57ac37baa4d9869d7b488ac1b838a5cfa5b13000000000000000000000000",
"txid": "3ac97fdd33c713857c1aac8de58cee5d51c768619602b969db9c752e65b28d69",
"overwintered": true,
"version": 4,
"versiongroupid": "892f2085",
"locktime": 1552581403,
"expiryheight": 1268730,
"vin": [
{
"txid": "eb09b56e0565dc7ac70b99ceef2e79e6e4f4becb32a8618c0857d0f875bcb993",
"vout": 1,
"address": "R9kXMEiPQrFrDgNtnc7nYAQsDmLRXF2F5n",
"scriptSig": {
"asm": "3045022100bd390bb79971e15054cd203098d9109c0dac0ca20413ba5d9bfda66095b80ae902204d9afc50892fa13df30131a3f1fdbf7d1426307599c48cdf3069eb80de99660b[ALL] 03ab19ae57aa6e013a660f82b5ffd1434d28c7a15f14c0b2eb40dae614e00b0374",
"hex": "483045022100bd390bb79971e15054cd203098d9109c0dac0ca20413ba5d9bfda66095b80ae902204d9afc50892fa13df30131a3f1fdbf7d1426307599c48cdf3069eb80de99660b012103ab19ae57aa6e013a660f82b5ffd1434d28c7a15f14c0b2eb40dae614e00b0374"
},
"value": 2300.0,
"valueSat": 230000000000,
"address": "R9kXMEiPQrFrDgNtnc7nYAQsDmLRXF2F5n",
"sequence": 4294967294
}
],
"vout": [
{
"value": 1728.021,
"interest": 0.0,
"valueSat": 172802100000,
"n": 0,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 0a11a6cd3eb3cc4005f6f8d1e8bfd47be9e99c61 OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a9140a11a6cd3eb3cc4005f6f8d1e8bfd47be9e99c6188ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": ["RACRytPnrER2Mae5tKhnXnW5FqJSxLX5FY"]
}
},
{
"value": 571.978,
"interest": 0.0,
"valueSat": 57197800000,
"n": 1,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 a90b2782f35e63d9d2a0f57ac37baa4d9869d7b4 OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a914a90b2782f35e63d9d2a0f57ac37baa4d9869d7b488ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": ["RQh1dxD25pU2NbhprGTMUsiwPzw1GJBeah"]
}
}
],
"vjoinsplit": [],
"valueBalance": 0.0,
"vShieldedSpend": [],
"vShieldedOutput": [],
"blockhash": "0d1b5c0a59353f4290c52075cffadb32aeec6a1cdec9fa5625f9206ca6417a2f",
"height": 1268711,
"confirmations": 1,
"rawconfirmations": 5,
"time": 1552581666,
"blocktime": 1552581666
},
"error": null,
"id": "curltest"
}sendrawtransaction “hexstring” ( allowhighfees )
The sendrawtransction method submits raw transaction (serialized, hex-encoded) to local nodes and the network.
Also see createrawtransaction and signrawtransaction calls.
| Name | Type | Description |
|---|---|---|
| “hexstring” | (string, required) | the hex string of the raw transaction |
| allowhighfees | (boolean, optional, default=false) | whether to allow high fees |
| Name | Type | Description |
|---|---|---|
| “hex” | (string) | the transaction hash in hex |
Create a transaction:
Command:./hush-cli createrawtransaction '[{"txid" : "a44feb2e788d0332e283d8ca69c6a20999944dccac93246cbf9b36d841b08c95","vout":0}]' '{"RHCXHfXCZQpbUbihNHh5gTwfr7NXmJXmHi":0.01}'
Response:
0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa40000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000
Sign the transaction, and get back the hex:
Command:./hush-cli signrawtransaction "0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa40000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"
Response:
{
"hex": "0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa4000000006a4730440220242c38740261799f9b6ccbde8f941e2567e86c84108c508d108d062ab9677b6e02206fea089b28c6d66d1c8f2343e1de7960dadafa3cf268c00f7dbe391cd8b9365f01210384c0db4f1eaa142a2745742b942f989375dbec32c55310a793225bb5c43cdc98ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000",
"complete": true
}
Send the transaction (signed hex):
Command:./hush-cli sendrawtransaction "0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa4000000006a4730440220242c38740261799f9b6ccbde8f941e2567e86c84108c508d108d062ab9677b6e02206fea089b28c6d66d1c8f2343e1de7960dadafa3cf268c00f7dbe391cd8b9365f01210384c0db4f1eaa142a2745742b942f989375dbec32c55310a793225bb5c43cdc98ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"
Response:
f1e041b2e2f1dafd331535d8277193aa27c33309a801949e0739a6b31c3d8a56
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "sendrawtransaction", "params": ["0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa4000000006a4730440220242c38740261799f9b6ccbde8f941e2567e86c84108c508d108d062ab9677b6e02206fea089b28c6d66d1c8f2343e1de7960dadafa3cf268c00f7dbe391cd8b9365f01210384c0db4f1eaa142a2745742b942f989375dbec32c55310a793225bb5c43cdc98ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "f1e041b2e2f1dafd331535d8277193aa27c33309a801949e0739a6b31c3d8a56",
"error": null,
"id": "curltest"
}signrawtransaction “hexstring” ( [{ “txid”: “id”, “vout”: n, “scriptPubKey”: “hex”, “redeemScript”: “hex” }, … ][ “privatekey1”, … ] sighashtype )
The signrawtransaction method signs inputs for a raw transaction (serialized, hex-encoded). The second optional argument (may be null) is an array of previous transaction outputs that this transaction depends on, but may not yet be in the block chain. The third optional argument (may be null) is an array of base58-encoded private keys that, if given, will be the only keys used to sign the transaction.
::: tip
For full details, please see https://bitcoin.org/en/developer-reference#signrawtransaction">the linked documentation</a>.
:::
| Name | Type | Description |
|---|---|---|
| “hexstring” | (string, required) | the transaction hex string |
| “prevtxs” | (string, optional) | a json array of previous dependent transaction outputs |
| “txid” | (string, required) | the transaction id |
| “vout” | (numeric, required) | the output number |
| “scriptPubKey” | (string, required) | the script key |
| “redeemScript” | (string, required for P2SH) | redeem script |
| “amount” | (numeric, required) | the amount spent |
| “privatekeys” | (string, optional) | a json array of base58-encoded private keys for signing |
| “privatekey” | (string) | the private key in base58-encoding |
| “sighashtype” | (string, optional, default=ALL) | the signature hash type; the following options are available: “ALL” |
| Name | Type | Description |
|---|---|---|
| “hex” | (string) | the hex-encoded raw transaction with signature(s) |
| “complete” | (boolean) | whether the transaction has a complete set of signatures |
| “errors” | ||
| “txid” | (string) | the hash of the referenced, previous transaction |
| “vout” | (numeric) | the index of the output to spend and used as input |
| “scriptSig” | (string) | the hex-encoded signature script |
| “sequence” | (numeric) | the script sequence number |
| “error” | (string) | verification or signing error related to the input |
./hush-cli signrawtransaction "0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa40000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"
Response:
{
"hex": "0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa4000000006a4730440220242c38740261799f9b6ccbde8f941e2567e86c84108c508d108d062ab9677b6e02206fea089b28c6d66d1c8f2343e1de7960dadafa3cf268c00f7dbe391cd8b9365f01210384c0db4f1eaa142a2745742b942f989375dbec32c55310a793225bb5c43cdc98ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000",
"complete": true
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "signrawtransaction", "params": ["0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa40000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"hex": "0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa4000000006a4730440220242c38740261799f9b6ccbde8f941e2567e86c84108c508d108d062ab9677b6e02206fea089b28c6d66d1c8f2343e1de7960dadafa3cf268c00f7dbe391cd8b9365f01210384c0db4f1eaa142a2745742b942f989375dbec32c55310a793225bb5c43cdc98ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000",
"complete": true
},
"error": null,
"id": "curltest"
}
z_exportkey “z_address”
The z_exportkey method reveals the private z_key corresponding to z_address.
::: tip
See also z_importkey.
:::
| Name | Type | Description |
|---|---|---|
| “z_address” | (string, required) | the z_address for the private key |
| Name | Type | Description |
|---|---|---|
| “key” | (string) | the private key |
./hush-cli z_exportkey "ztffWAUUY9PnLiBVXY2pnX67kfm71SevtPC5d9LLM3xZqehy4XxV1FeyxPWcHGTiCd7GtQ17gk5jDTQxhHB13K1A7HT6hZH"
Response:
DONOTUSExxxxxxxxxxxxxxxxV6EyPpaZFVDsqeNB6k8eoLFERdag
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_exportkey", "params": ["ztffWAUUY9PnLiBVXY2pnX67kfm71SevtPC5d9LLM3xZqehy4XxV1FeyxPWcHGTiCd7GtQ17gk5jDTQxhHB13K1A7HT6hZH"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "DONOTUSExxxxxxxxxxxxxxxxV6EyPpaZFVDsqeNB6k8eoLFERdag",
"error": null,
"id": "curltest"
}z_exportviewingkey “z_address”
The z_exportviewingkey method reveals the viewing key corresponding to z_address.
::: tip
See also z_importviewingkey.
:::
| Name | Type | Description |
|---|---|---|
| “z_address” | (string, required) | the z_address for the viewing key |
| Name | Type | Description |
|---|---|---|
| “vkey” | (string) | the viewing key |
./hush-cli z_exportviewingkey "ztffWAUUY9PnLiBVXY2pnX67kfm71SevtPC5d9LLM3xZqehy4XxV1FeyxPWcHGTiCd7GtQ17gk5jDTQxhHB13K1A7HT6hZH"
Response:
ZiVtf1yjjR9DeDNNgd4kvRgS1oovQwfK6xt2csfhTwpbUVjnC9RrEeuVkAfJrxN1jDR3d7vR6XmLne4vC9SCYR5F9XMzW19VJ
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_exportviewingkey", "params": ["ztffWAUUY9PnLiBVXY2pnX67kfm71SevtPC5d9LLM3xZqehy4XxV1FeyxPWcHGTiCd7GtQ17gk5jDTQxhHB13K1A7HT6hZH"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "ZiVtf1yjjR9DeDNNgd4kvRgS1oovQwfK6xt2csfhTwpbUVjnC9RrEeuVkAfJrxN1jDR3d7vR6XmLne4vC9SCYR5F9XMzW19VJ",
"error": null,
"id": "curltest"
}z_exportwallet “filename”
The z_exportwallet method exports all wallet keys, including both t address and z address types, in a human-readable format. Overwriting an existing file is not permitted.
| Name | Type | Description |
|---|---|---|
| “filename” | (string, required) | the filename, saved to the directory indicated by the exportdir parameter at daemon runtime (required) |
| Name | Type | Description |
|---|---|---|
| “path” | (string) | the full path of the destination file |
./hush-cli z_exportwallet "test"
Response:
/home/myusername/mydirectory/test
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_exportwallet", "params": ["test"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "/home/myusername/mydirectory/test",
"error": null,
"id": "curltest"
}z_getbalance “address” ( minconf )
The z_getbalance method returns the balance of a t address or z address belonging to the node’s wallet.
::: warning
CAUTION: If address is a watch-only z address, the returned balance may be larger than the actual balance,
as spends cannot be detected with incoming viewing keys.
:::
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the selected z or t address |
| minconf | (numeric, optional, default=1) | only include transactions confirmed at least this many times |
| Name | Type | Description |
|---|---|---|
| amount | (numeric) | the total amount received at this address (in the relevant COIN value) |
The total amount received by address “myaddress” at least 5 blocks confirmed
Command:./hush-cli z_getbalance "ztfF6SFBfq2qha73dAgsXnL86F8air32CXKxJg8aYtEPJFdLcw4y3zWzBasocnx1V9GLnnFeKnkPvkScjNkQBfWn2kBDmkn"
Response:
0.01980000
Command:
./hush-cli z_getbalance "ztfF6SFBfq2qha73dAgsXnL86F8air32CXKxJg8aYtEPJFdLcw4y3zWzBasocnx1V9GLnnFeKnkPvkScjNkQBfWn2kBDmkn" 5
Response:
0.01980000
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_getbalance", "params": ["ztfF6SFBfq2qha73dAgsXnL86F8air32CXKxJg8aYtEPJFdLcw4y3zWzBasocnx1V9GLnnFeKnkPvkScjNkQBfWn2kBDmkn", 5] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response”>
{
"result": 0.0198,
"error": null,
"id": "curltest"
}z_getnewaddress
The z_getnewaddress method returns a new z_address for receiving payments.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “z_address” | (string) | the new z_address |
./hush-cli z_getnewaddress
Response:
ztbUD83kXgHt3A1M282wFvT9Ms6SiBCd6GSbQbPa2C7UtPojVZjPENytFqu7JxgnsgL9EN42xWnyhhzniHYSRJDnEPTgo3Y
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_getnewaddress", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": "ztci8RzNSo2pdiDpAeHpz9Rp91hq12Mn7zcFfBR8Jjs2ydZUCTw8rLZzkVP888M4vGezpZVfsTR8orgxYK3N8gdgbBzakx3",
"error": null,
"id": "curltest"
}z_getoperationresult ([ “operationid”, … ])
The z_getoperationresult method retrieves the result and status of an operation which has finished, and then removes the operation from memory.
::: tip
See also z_getoperationstatus.
:::
| Name | Type | Description |
|---|---|---|
| “operationid” | (string, optional) | a list of operation ids to query; if not provided, the method examines all operations known to the node |
| Name | Type | Description |
|---|---|---|
| “id” | (string) | the operation id |
| “status” | (string) | the result of the operation; can be success |
| “creation_time” | (numeric) | the creation time, in seconds since epoch (Jan 1 1970 GMT) |
| “result”: { … } | (array of json objects) | |
| “txid”: | (string) | the transaction id |
| “execution_secs” | (numeric) | the length of time to calculate the transaction |
| “method” | (string) | the name of the method used in the operation |
| “params”: { … } | (json) | |
| “fromaddress” | (string) | the address from which funds are drawn |
| “amounts”: [ … ] | (array of json objects) | |
| “address” | (string) | the receiving address |
| “amount” | (numeric) | the amount to receive |
| “minconf” | (numeric) | the minimum number of confirmations required |
| “fee” | (numeric) | the transaction fee |
./hush-cli z_getoperationresult '["opid-6e581ee5-4e90-4e70-8961-f95d8d28748c"]'
Response:
[
{
"id": "opid-6e581ee5-4e90-4e70-8961-f95d8d28748c",
"status": "success",
"creation_time": 1537287690,
"result": {
"txid": "65e01c8485f6a85fbf7093d8233864eed0f31e6e2eff22a7e468e92c37dc864c"
},
"execution_secs": 44.606282288,
"method": "z_sendmany",
"params": {
"fromaddress": "RWUwHqRUYgxfYNNSHWkQuY5sh93VGiiPoX",
"amounts": [
{
"address": "ztci8RzNSo2pdiDpAeHpz9Rp91hq12Mn7zcFfBR8Jjs2ydZUCTw8rLZzkVP888M4vGezpZVfsTR8orgxYK3N8gdgbBzakx3",
"amount": 0.01
}
],
"minconf": 1,
"fee": 0.0001
}
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_getoperationresult", "params": [["opid-6a9da0dd-a950-4d95-848c-d3c18e44be03"]] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"id": "opid-6a9da0dd-a950-4d95-848c-d3c18e44be03",
"status": "success",
"creation_time": 1537288235,
"result": {
"txid": "f0309f8dc2e33e108dec39285bc8755058375cf6e51bdb452fb45f3d14909fef"
},
"execution_secs": 44.978749064,
"method": "z_sendmany",
"params": {
"fromaddress": "RWUwHqRUYgxfYNNSHWkQuY5sh93VGiiPoX",
"amounts": [
{
"address": "ztci8RzNSo2pdiDpAeHpz9Rp91hq12Mn7zcFfBR8Jjs2ydZUCTw8rLZzkVP888M4vGezpZVfsTR8orgxYK3N8gdgbBzakx3",
"amount": 0.01
}
],
"minconf": 1,
"fee": 0.0001
}
}
],
"error": null,
"id": "curltest"
}z_getoperationstatus ([ “operationid”, … ])
The z_getoperationstatus message queries the operation status and any associated result or error data of any operationid stored in local memory. The operation will remain in memory (unlike z_getoperationresult, which removes the data from the local memory).
| Name | Type | Description |
|---|---|---|
| “operationid” | (array, optional) | a list of operation ids we are interested in; if an array is not provided, the method examines all operations known to the node |
| Name | Type | Description |
|---|---|---|
| “id” | (string) | the operation id |
| “status” | (string) | the status of the operation; can be success |
| “creation_time” | (numeric) | the creation time, in seconds since epoch (Jan 1 1970 GMT) |
| “error” : { … } | (array of json objects) | |
| “code” | (numeric) | the associated error code |
| “message” | (string) | a message to indicate the nature of the error, if such a message is available |
| “method” | (string) | the name of the method used in the operation |
| “params” : { … } | (array of json objects) | |
| “fromaddress” | (string) | the address from which funds are drawn |
| “amounts”: [ … ] | (array of json objects) | |
| “address” | (string) | the receiving address |
| “amount” | (numeric) | the amount to receive |
| “minconf” | (numeric) | indicates the required number of mining confirmations |
| “fee” | (numeric) | the fee |
./hush-cli z_getoperationstatus
Response:
[
{
"id": "opid-b650b582-c2f5-43e0-9a65-9fe23f65c1a5",
"status": "failed",
"creation_time": 1537288268,
"error": {
"code": -6,
"message": "Insufficient funds, no UTXOs found for taddr from address."
},
"method": "z_sendmany",
"params": {
"fromaddress": "RWUwHqRUYgxfYNNSHWkQuY5sh93VGiiPoX",
"amounts": [
{
"address": "ztci8RzNSo2pdiDpAeHpz9Rp91hq12Mn7zcFfBR8Jjs2ydZUCTw8rLZzkVP888M4vGezpZVfsTR8orgxYK3N8gdgbBzakx3",
"amount": 0.01
}
],
"minconf": 1,
"fee": 0.0001
}
}
]
Command:
./hush-cli z_getoperationstatus '["opid-47e12224-8477-4cd4-852d-d8c3ddbc6375"]'
Response:
[
{
"id": "opid-47e12224-8477-4cd4-852d-d8c3ddbc6375",
"status": "executing",
"creation_time": 1537289777,
"method": "z_sendmany",
"params": {
"fromaddress": "RWUwHqRUYgxfYNNSHWkQuY5sh93VGiiPoX",
"amounts": [
{
"address": "ztci8RzNSo2pdiDpAeHpz9Rp91hq12Mn7zcFfBR8Jjs2ydZUCTw8rLZzkVP888M4vGezpZVfsTR8orgxYK3N8gdgbBzakx3",
"amount": 0.01
}
],
"minconf": 1,
"fee": 0.0001
}
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_getoperationstatus", "params": [["opid-47e12224-8477-4cd4-852d-d8c3ddbc6375"]] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"id": "opid-47e12224-8477-4cd4-852d-d8c3ddbc6375",
"status": "success",
"creation_time": 1537289777,
"result": {
"txid": "2b988a708db2b8d99a92bbff65a57d0d73fdb22c30fc3f3e4f81ab15cfeafc45"
},
"execution_secs": 45.200043917,
"method": "z_sendmany",
"params": {
"fromaddress": "RWUwHqRUYgxfYNNSHWkQuY5sh93VGiiPoX",
"amounts": [
{
"address": "ztci8RzNSo2pdiDpAeHpz9Rp91hq12Mn7zcFfBR8Jjs2ydZUCTw8rLZzkVP888M4vGezpZVfsTR8orgxYK3N8gdgbBzakx3",
"amount": 0.01
}
],
"minconf": 1,
"fee": 0.0001
}
}
],
"error": null,
"id": "curltest"
}z_gettotalbalance ( minconf includeWatchonly )
The z_gettotalbalance method returns the total value of funds, including both transparent and private, stored in the node’s wallet.
::: warning
CAUTION: If the wallet contains watch-only z addresses the returned private balance may be larger than the actual balance, as spends cannot be detected with incoming viewing keys.
:::
::: tip
While the interest property is returned for all KMD-based coin daemons, only the main KMD chain utilizes the interest feature. KMD-based Smart Chains will always return a 0.00 interest value.
:::
| Name | Type | Description |
|---|---|---|
| minconf | (numeric, optional, default=1) | only include private and transparent transactions confirmed at least this many times |
| includeWatchonly | (bool, optional, default=false) | also include balance in watchonly addresses (see ‘importaddress’ and ‘z_importviewingkey’) |
| Name | Type | Description |
|---|---|---|
| “transparent” | (numeric) | the total balance of transparent funds |
| “interest” | (numeric) | the total balance of unclaimed interest earned |
| “private” | (numeric) | the total balance of private funds |
| “total” | (numeric) | the total balance of both transparent and private funds |
./hush-cli z_gettotalbalance
Response:
{
"transparent": "9.98794883",
"interest": "0.00",
"private": "0.08205",
"total": "10.06999883"
}
Command:
./hush-cli z_gettotalbalance 5
Response:
{
"transparent": "9.98794883",
"interest": "0.00",
"private": "0.08205",
"total": "10.06999883"
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_gettotalbalance", "params": [5] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"transparent": "0.00615",
"interest": "0.00",
"private": "0.06205",
"total": "0.0682"
},
"error": null,
"id": "curltest"
}z_importkey “z_privatekey” ( rescan startHeight )
The z_importkey method imports z_privatekey to your wallet.
::: tip
This call can take minutes to complete if rescan is true.
:::
::: tip
The optional parameters are currently not functional with KMD-based blockchains.
:::
::: tip
See also z_exportkey.
:::
| Name | Type | Description |
|---|---|---|
| “z_privatekey” | (string, required) | the z_privatekey (see z_exportkey) |
| rescan | (string, optional, default="whenkeyisnew") |
rescan the wallet for transactions; can be yes |
| startHeight | (numeric, optional, default=0) | the block height at which to begin the rescan |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli z_importkey DONOTUSExxxxxxxxxxxxxxxxBP6ipkmBxmEQbugcCQ16vUaWGFK
Response:
(none)
Command:
./hush-cli z_importkey DONOTUSExxxxxxxxxxxxxxxxBP6ipkmBxmEQbugcCQ16vUaWGFK whenkeyisnew 30000
Response:
(none)
Command:
./hush-cli z_importkey DONOTUSExxxxxxxxxxxxxxxxBP6ipkmBxmEQbugcCQ16vUaWGFK yes 20000
Response:
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_importkey", "params": ["DONOTUSExxxxxxxxxxxxxxxxBP6ipkmBxmEQbugcCQ16vUaWGFK", "no"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": null,
"error": null,
"id": "curltest"
}z_validateaddress “zaddr”
The z_validateaddress method returns information about the given z address.
| Name | Type | Description |
|---|---|---|
| “zaddr” | (string, required) | the z address to validate |
| Name | Type | Description |
|---|---|---|
| “isvalid” | (boolean) | indicates whether the address is valid; if not, this is the only property returned |
| “address” | (string) | the z address validated |
| “ismine” | (boolean) | indicates if the address is yours or not |
| “payingkey” | (string) | the hex value of the paying key, a_pk |
| “transmissionkey” | (string) | the hex value of the transmission key, pk_enc |
./hush-cli z_validateaddress "zcWsmqT4X2V4jgxbgiCzyrAfRT1vi1F4sn7M5Pkh66izzw8Uk7LBGAH3DtcSMJeUb2pi3W4SQF8LMKkU2cUuVP68yAGcomL"
Response:
{
"isvalid": true,
"address": "ztdChvxs2Z97X7qeBwsnRLbxva1ZVgWhFWZxZTA5bC8XLt9RHF8uXn16MWCU8DhKEt4gTtKqQwzsrk85f5tThWMNoYds2oX",
"payingkey": "d9c09cb974fbe0bf7e36a2318b46396c5112511f90749531428936867d83bd92",
"transmissionkey": "5ce3250912758cbb591e3d585ef110992f25ed7694b88f55315b060698b75404",
"ismine": true
}
z_importviewingkey “viewing_key” ( rescan startHeight )
The z_importviewingkey adds a viewing key to your wallet. This method allows you to view the balance in a z address that otherwise does not belong to your wallet.
::: tip
See also z_exportviewingkey.
:::
::: tip
This call can take minutes to complete if rescan is true.
:::
::: tip
The optional parameters are currently not functional for KMD-based blockchains.
:::
| Name | Type | Description |
|---|---|---|
| “viewing_key” | (string, required) | the viewing key |
| rescan | (string, optional, default=“whenkeyisnew”) | whether to rescan the wallet for transactions; can be "yes" |
| startHeight | (numeric, optional, default=0) | block height to start rescan |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli z_importviewingkey "ZiVtfYkeyRY3y8Wykm5zjLcnssEkVrkej6j3kQ5B1AE2qp2F3VsKzpoXTzD82hrvMjWB9WxCHbXXrXax2ceyHLWrnQDaMrMja"
Response:
(none)
Command:
./hush-cli z_importviewingkey "ZiVtfYkeyRY3y8Wykm5zjLcnssEkVrkej6j3kQ5B1AE2qp2F3VsKzpoXTzD82hrvMjWB9WxCHbXXrXax2ceyHLWrnQDaMrMja" no
Response
(none)
Command:
./hush-cli z_importviewingkey "ZiVtfYkeyRY3y8Wykm5zjLcnssEkVrkej6j3kQ5B1AE2qp2F3VsKzpoXTzD82hrvMjWB9WxCHbXXrXax2ceyHLWrnQDaMrMja" whenkeyisnew 30000
Response:
(none)
Command:
./hush-cli z_importviewingkey "ZiVtfYkeyRY3y8Wykm5zjLcnssEkVrkej6j3kQ5B1AE2qp2F3VsKzpoXTzD82hrvMjWB9WxCHbXXrXax2ceyHLWrnQDaMrMja" yes 20000
Response:
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_importviewingkey", "params": ["ZiVtfYkeyRY3y8Wykm5zjLcnssEkVrkej6j3kQ5B1AE2qp2F3VsKzpoXTzD82hrvMjWB9WxCHbXXrXax2ceyHLWrnQDaMrMja", "no"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(none)z_importwallet “filename”
The z_importwallet method imports t address and z address keys from a wallet export file.
::: tip
See also z_exportwallet.
:::
| Name | Type | Description |
|---|---|---|
| “filename” | (string, required) | the wallet file |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli z_importwallet "/mydirectory/nameofbackup"
Response:
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_importwallet", "params": ["/mydirectory/nameofbackup"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": null,
"error": null,
"id": "curltest"
}z_listaddresses ( includeWatchonly )
The z_listaddresses method returns the list of z addresses belonging to the wallet.
::: tip
See also z_importviewingkey.
:::
| Name | Type | Description |
|---|---|---|
| includeWatchonly | (bool, optional, default=false) | also include watchonly addresses |
| Name | Type | Description |
|---|---|---|
| “z_address” | (string) | a z address belonging to the wallet |
./hush-cli z_listaddresses
Response:
[
"ztYMDvwUqi5FZLQy4so71ZGHXk2fDtEYU9HNns9DNYjXJr9PEzSL8Dq8NcdiRijsgCm4r3nNWA6dUrqW9suGd2F7uuj2BhP",
"ztbUD83kXgHt3A1M282wFvT9Ms6SiBCd6GSbQbPa2C7UtPojVZjPENytFqu7JxgnsgL9EN42xWnyhhzniHYSRJDnEPTgo3Y"
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_listaddresses", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport
Response
{
"result": [
"ztYMDvwUqi5FZLQy4so71ZGHXk2fDtEYU9HNns9DNYjXJr9PEzSL8Dq8NcdiRijsgCm4r3nNWA6dUrqW9suGd2F7uuj2BhP",
"ztbUD83kXgHt3A1M282wFvT9Ms6SiBCd6GSbQbPa2C7UtPojVZjPENytFqu7JxgnsgL9EN42xWnyhhzniHYSRJDnEPTgo3Y"
],
"error": null,
"id": "curltest"
}z_listoperationids
The z_listoperationids method returns the list of operation ids currently known to the wallet.
| Name | Type | Description |
|---|---|---|
| “status” | (string, optional) | filter result by the operation’s state e.g. “success” |
| Name | Type | Description |
|---|---|---|
| “operationid” | (string) | an operation id belonging to the wallet |
./hush-cli z_listoperationids
Response:
[
"opid-47e12224-8477-4cd4-852d-d8c3ddbc6375",
"opid-b650b582-c2f5-43e0-9a65-9fe23f65c1a5"
]
Command:
./hush-cli z_listoperationids "success"
Response:
[
"opid-47e12224-8477-4cd4-852d-d8c3ddbc6375"
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_listoperationids", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
"opid-47e12224-8477-4cd4-852d-d8c3ddbc6375",
"opid-b650b582-c2f5-43e0-9a65-9fe23f65c1a5"
],
"error": null,
"id": "curltest"
}z_listreceivedbyaddress “address” ( minconf )
The z_listreceivedbyaddress method returns a list of amounts received by a z address belonging to the node’s wallet.
| Name | Type | Description |
|---|---|---|
| address | (string) | the private address. |
| minconf | (numeric, optional, default=1) | only include transactions confirmed at least this many times |
An array of json objects, each having the properties below.
| Name | Type | Description |
|---|---|---|
| txid | (string) | the transaction id |
| amount | (numeric) | the amount of value in the note |
| memo | (string) | hexadecimal string representation of memo field |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations (number of blocks on top of this transaction’s block) |
| jsindex | (sprout) | (numeric, received only by sprout addresses) the joinsplit index |
| jsoutindex | (numeric, received only by sprout addresses) | the output index of the joinsplit |
| outindex | (numeric, sapling) | the output index |
| change | (boolean) | true if the address that received the note is also one of the sending addresses |
./hush-cli z_listreceivedbyaddress "zs1wqykmk74mv2ezjscpxsgzrn4fasqwh50tgk0ym64m45c5yw5fjtpkps64gle963veqzuj04872z"
Response:
[
{
"txid": "b9a98f3cbfec7a8a93c240e19e8eea5ab3ee8de3e6372105ffb72308b72ea05f",
"amount": 77.00000000,
"memo": "f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"outindex": 0,
"rawconfirmations": 9,
"confirmations": 9,
"change": false
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user rpcuser:rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_listreceivedbyaddress", "params": ["zs1umhaattx6lna933m9zwfqlmkm2qj49hpa9lnymtj5h5c7cwtd3evfpu29hppprax9cs45fzeyqg"] }' -H 'content-type: text/plain;' http://127.0.0.1:rpcport/
Response:
blockHash 0a4f15fe5425ef8bc6eb84e7bc3625c1ceccb3e49132b696a1841ab17a75a705 height 55200
{"result":[{"txid":"23d33c0c12ba2224b2c9c252e304f491bf76ca05670c8f00d48300776c10850f","amount":100.00000000,"memo":"f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","outindex":0,"rawconfirmations":1,"confirmations":1,"change":false}],"error":null,"id":"curltest"}z_listunspent ( minconf maxconf includeWatchonly [“zaddr”, …] )
The z_listunspent method returns an array of unspent shielded notes.
The method can also filter to only include results that have between minconf and maxconf (inclusive) confirmations, and also for specified z_addresses (["zaddr", ...]).
When minconf is 0 unspent notes with zero confirmations are returned, even though they are not immediately spendable.
Results are an array of Objects, each of which has:
{txid, jsindex, jsoutindex, confirmations, address, amount, memo} (Sprout)
{txid, outindex, confirmations, address, amount, memo} (Sapling)
| Name | Type | Description |
|---|---|---|
| minconf | (numeric, optional, default=1) | the minimum confirmations to filter |
| maxconf | (numeric, optional, default=9999999) | the maximum confirmations to filter |
| includeWatchonly | (bool, optional, default=false) | whether to also include watchonly addresses (see z_importviewingkey) |
| addresses | (array) | a json array of z addresses (both Sprout and Sapling) to act as a filter; duplicate addresses are not allowed |
| address | (string) | a z address |
An array of json objects, each having the properties below.
| Name | Type | Description |
|---|---|---|
| txid | (string) | the transaction id |
| jsindex | (numeric) | the joinsplit index |
| jsoutindex | (numeric, only returned on sprout addresses) | the output index of the joinsplit |
| outindex | (numeric, only returned on sapling addresses) | the output index |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations (number of blocks on top of this transaction’s block) |
| spendable | (boolean) | true if note can be spent by wallet, false if note has zero confirmations, false if address is watchonly |
| address | (string) | the shielded address |
| amount | (numeric) | the amount of value in the note |
| memo | (string) | hexadecimal string representation of memo field |
| change | (boolean) | true if the address that received the note is also one of the sending addresses |
./hush-cli z_listunspent
Response:
[
{
"txid": "b9a98f3cbfec7a8a93c240e19e8eea5ab3ee8de3e6372105ffb72308b72ea05f",
"outindex": 0,
"confirmations": 1,
"rawconfirmations": 1,
"spendable": true,
"address": "zs1wqykmk74mv2ezjscpxsgzrn4fasqwh50tgk0ym64m45c5yw5fjtpkps64gle963veqzuj04872z",
"amount": 77.00000000,
"memo": "f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"change": false
}
]
Command:
./hush-cli -ac_name=BEER z_listunspent 1 100 false "[\"zs1wqykmk74mv2ezjscpxsgzrn4fasqwh50tgk0ym64m45c5yw5fjtpkps64gle963veqzuj04872z\"]"
Response
[
{
"txid": "b9a98f3cbfec7a8a93c240e19e8eea5ab3ee8de3e6372105ffb72308b72ea05f",
"outindex": 0,
"confirmations": 2,
"rawconfirmations": 2,
"spendable": true,
"address": "zs1wqykmk74mv2ezjscpxsgzrn4fasqwh50tgk0ym64m45c5yw5fjtpkps64gle963veqzuj04872z",
"amount": 77.00000000,
"memo": "f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"change": false
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user rpcuser:rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_listunspent", "params": [1, 9999999, false, ["zs1umhaattx6lna933m9zwfqlmkm2qj49hpa9lnymtj5h5c7cwtd3evfpu29hppprax9cs45fzeyqg"] ] }' -H 'content-type: text/plain;' http://127.0.0.1:rpcport/
Response:
blockHash 0a4f15fe5425ef8bc6eb84e7bc3625c1ceccb3e49132b696a1841ab17a75a705 height 55200
{"result":[{"txid":"23d33c0c12ba2224b2c9c252e304f491bf76ca05670c8f00d48300776c10850f","outindex":0,"confirmations":1,"rawconfirmations":1,"spendable":true,"address":"zs1umhaattx6lna933m9zwfqlmkm2qj49hpa9lnymtj5h5c7cwtd3evfpu29hppprax9cs45fzeyqg","amount":100.00000000,"memo":"f600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","change":false}],"error":null,"id":"curltest"}z_mergetoaddress [ “fromaddress”, … ] “toaddress” ( fee ) ( transparent_limit ) ( shielded_limit ) ( memo )
::: warning
CAUTION: z_mergetoaddress is DISABLED but can be enabled as an experimental feature.
:::
The z_mergetoaddress method merges multiple utxos and notes into a single utxo or note. The method works for both t addresses and z addresses, both separately and in combination. Coinbase utxos are ignored; use z_shieldcoinbase to combine those into a single note.
This is an asynchronous operation, and utxos selected for merging will be locked. If there is an error, they are unlocked. The RPC call listlockunspent can be used to return a list of locked utxos.
The number of utxos and notes selected for merging can be limited by the caller. If the transparent limit parameter is set to 0, the mempooltxinputlimit option will determine the number of utxos. Any limit is constrained by the consensus rule defining a maximum transaction size of 100000 bytes.
The following special strings are accepted inside the fromaddresses array:
"*": Merge both utxos and notes from all addresses belonging to the wallet
"ANY_TADDR": Merge utxos from all t addresses belonging to the wallet
"ANY_ZADDR": Merge notes from all z addresses belonging to the wallet
If a special string is given, any given addresses of that type will be ignored
| Name | Type | Description |
|---|---|---|
| fromaddresses | (string, required) | |
| “address” | (string) | can be a t address or a z address |
| “toaddress” | (string, required) | the t address or z address to receive the combined utxo |
| fee | (numeric, optional, default=0.0001) | the fee amount to attach to this transaction |
| transparent_limit | (numeric, optional, default=50) | limit on the maximum number of transparent utxos to merge; you may set this value to 0 to use the node option mempooltxinputlimit |
| shielded_limit | (numeric, optional, default=10) | limit on the maximum number of hidden notes to merge; you may set this value to 0 to merge as many as will fit in the transaction |
| “memo” | (string, optional) | encoded as hex; when toaddress is a z address, this value will be stored in the memo field of the new note |
| Name | Type | Description |
|---|---|---|
| “remainingUTXOs” | (numeric) | the number of utxos still available for merging |
| “remainingTransparentValue” | (numeric) | the value of utxos still available for merging |
| “remainingNotes” | (numeric) | the number of notes still available for merging |
| “remainingShieldedValue” | (numeric) | the value of notes still available for merging |
| “mergingUTXOs” | (numeric) | the number of utxos being merged |
| “mergingTransparentValue” | (numeric) | the value of utxos being merged |
| “mergingNotes” | (numeric) | the number of notes being merged |
| “mergingShieldedValue” | (numeric) | the value of notes being merged |
| “opid” | (string) | an operationid to pass to z_getoperationstatus to get the result of the operation |
./hush-cli z_mergetoaddress '["R1M72Sfpbz1BPpXFHz9m3CdqATR44Jvaydd"]' ztfaW34Gj9FrnGUEf833ywDVL62NWXBM81u6EQnM6VR45eYnXhwztecW1SjxA7JrmAXKJhxhj3vDNEpVCQoSvVoSpmbhtjf
Response:
(disabled)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_mergetoaddress", "params": [["R1M72Sfpbz1BPpXFHz9m3CdqATR44Jvaydd"], "ztfaW34Gj9FrnGUEf833ywDVL62NWXBM81u6EQnM6VR45eYnXhwztecW1SjxA7JrmAXKJhxhj3vDNEpVCQoSvVoSpmbhtjf"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(disabled)
z_sendmany “fromaddress” [ { “address”: …, “amount”: … }, … ] ( minconf ) ( fee )
The z_sendmany method sends one or more transactions at once, and allows for sending transactions of types t --> t, t --> z, z --> z, z --> t. It is the principle method for dealing with shielded z transactions in the Komodo ecosystem.
The amount values are double-precision floating point numbers. Change from a t address flows to a new t address address, while change from z address returns to itself. When sending coinbase utxos to a z address, change is not allowed. The entire value of the utxo(s) must be consumed. Currently, the maximum number of z address outputs is 54 due to transaction-size limits.
| Name | Type | Description |
|---|---|---|
| “fromaddress” | (string, required) | the sending t address or z address |
| “amounts” | (array of json objects) | |
| “address” | (string, required) | the receiving address; can be a t address or z address |
| “amount” | (numeric, required) | the numeric amount |
| “memo” | (string, optional) | if the address is a z address, this property accepts raw data represented in hexadecimal string format |
| minconf | (numeric, optional, default=1) | only use funds confirmed at least this many times |
| fee | (numeric, optional, default=0.0001) | the fee amount to attach to this transaction |
| Name | Type | Description |
|---|---|---|
| “operationid” | (string) | an operationid to pass to z_getoperationstatus to get the result of the operation |
./hush-cli z_sendmany "RUX5vGkxJCKBPGm8b97VUumt2aHkuCjp8e" '[{"address":"RVEsww91UBdUNGyCC1GjDVuvJShEei2kj4","amount":0.01}]'
Response:
opid-ad947755-b348-4842-90ca-0f0c71d13d34
Command:
./hush-cli z_sendmany "RCpMUZwxc3pWsgip5aj3Sy1cKkh86P3Tns" '[{"address":"ztci8RzNSo2pdiDpAeHpz9Rp91hq12Mn7zcFfBR8Jjs2ydZUCTw8rLZzkVP888M4vGezpZVfsTR8orgxYK3N8gdgbBzakx3","amount":0.01}]'
Response:
opid-cdd6af37-88a2-44d7-9630-d54d21f8b1c4
Command:
./hush-cli z_sendmany "ztci8RzNSo2pdiDpAeHpz9Rp91hq12Mn7zcFfBR8Jjs2ydZUCTw8rLZzkVP888M4vGezpZVfsTR8orgxYK3N8gdgbBzakx3" '[{"address":"ztYMDvwUqi5FZLQy4so71ZGHXk2fDtEYU9HNns9DNYjXJr9PEzSL8Dq8NcdiRijsgCm4r3nNWA6dUrqW9suGd2F7uuj2BhP","amount":0.0099}]'
Response:
opid-3c3d6f25-f333-4898-8a50-06f4012cf975
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_sendmany", "params": ["RCpMUZwxc3pWsgip5aj3Sy1cKkh86P3Tns", [{"address": "ztfaW34Gj9FrnGUEf833ywDVL62NWXBM81u6EQnM6VR45eYnXhwztecW1SjxA7JrmAXKJhxhj3vDNEpVCQoSvVoSpmbhtjf" ,"amount": 0.01}]] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "opid-73306924-3466-4944-a8f7-c45c14be0438",
"error": null,
"id": "curltest"
}z_shieldcoinbase “fromaddress” “tozaddress” ( fee ) ( limit )
The z_shieldcoinbase method shields transparent coinbase funds by sending the funds to a shielded z address. This is an asynchronous operation and utxos selected for shielding will be locked. If there is an error, they are unlocked.
The RPC call listlockunspent can be used to return a list of locked utxos. The number of coinbase utxos selected for shielding can be limited by the caller. If the limit parameter is set to zero, the mempooltxinputlimit option will determine the number of uxtos. Any limit is constrained by the consensus rule defining a maximum transaction size of 100000 bytes.
| Name | Type | Description |
|---|---|---|
| “fromaddress” | (string, required) | the address is a t address or "*" for all t address belonging to the wallet |
| “toaddress” | (string, required) | the address is a z address |
| fee | (numeric, optional, default=0.0001) | the fee amount to attach to this transaction |
| limit | (numeric, optional, default=50) | limit on the maximum number of utxos to shield; set to 0 to use node option mempooltxinputlimit |
| Name | Type | Description |
|---|---|---|
| “remainingUTXOs” | (numeric) | the number of coinbase utxos still available for shielding |
| “remainingValue” | (numeric) | the value of coinbase utxos still available for shielding |
| “shieldingUTXOs” | (numeric) | the number of coinbase utxos being shielded |
| “shieldingValue” | (numeric) | the value of coinbase utxos being shielded |
| “opid” | (string) | an operationid to pass to z_getoperationstatus to get the result of the operation |
./hush-cli z_shieldcoinbase "RXN2rxidK4cwzRL44UTnWvQjjvLdoMmCpU" "ztYMDvwUqi5FZLQy4so71ZGHXk2fDtEYU9HNns9DNYjXJr9PEzSL8Dq8NcdiRijsgCm4r3nNWA6dUrqW9suGd2F7uuj2BhP"
Response:
{
"remainingUTXOs": 0,
"remainingValue": 0.0,
"shieldingUTXOs": 2,
"shieldingValue": 0.0003,
"opid": "opid-c0a7875c-aaa0-4bdc-8f17-b34ab99e8bab"
}
Command:
./hush-cli z_shieldcoinbase "REyaj53EB2nwUnsmVyn8JHCcquKf1zYkEP" "ztYMDvwUqi5FZLQy4so71ZGHXk2fDtEYU9HNns9DNYjXJr9PEzSL8Dq8NcdiRijsgCm4r3nNWA6dUrqW9suGd2F7uuj2BhP" 0.0001 50
Response:
{
"remainingUTXOs": 0,
"remainingValue": 0.0,
"shieldingUTXOs": 14,
"shieldingValue": 0.0016,
"opid": "opid-08ce931d-876c-45d5-9aea-15cf4c695e72"
}
You can find your rpcuser, rpcpassword, and rpcport in huqh3.conf file.
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_shieldcoinbase", "params": ["RWRSfEYcfLv3yy9mhAuKHQTMCs9fArpPiH", "ztYMDvwUqi5FZLQy4so71ZGHXk2fDtEYU9HNns9DNYjXJr9PEzSL8Dq8NcdiRijsgCm4r3nNWA6dUrqW9suGd2F7uuj2BhP"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": {
"remainingUTXOs": 0,
"remainingValue": 0,
"shieldingUTXOs": 1,
"shieldingValue": 0.00025,
"opid": "opid-53018a85-cf68-4e7d-a065-0defea6bf061"
},
"error": null,
"id": "curltest"
}hushd software, and are made available through the hush-cli software.createmultisig nrequired [ “key”, … ]
The createmultisig method creates a multi-signature address with n signature(s) of m key(s) required. The method returns a json object with the address and redeemScript.
| Name | Type | Description |
|---|---|---|
| number_required | (numeric, required) | the number of required signatures out of the n key(s) or address(es) |
| “keys” | (string, required) | a json array of keys which are addresses or hex-encoded public keys |
| “key” | (string) | an address or hex-encoded public key |
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the value of the new multisig address |
| “redeemScript” | (string) | the string value of the hex-encoded redemption script |
./hush-cli createmultisig 2 "[\"RJnVEQgucK1iwiRjfTZmreXkF49KgTErDn\",\"RCVyjn9MQ8Tw6YRJnDcsx67kfsmfUgLdfw\"]"
Response:
{
"address": "bZjsy6bt2ZdyHV5hfCNL2HsuA4eV63s5u6",
"redeemScript": "52210384c0db4f1eaa142a2745742b942f989375dbec32c55310a793225bb5c43cdc9821021f527b7269ab18da85a50b7f45f572e8b017fce476de06cb80a2550ee7d4b11652ae"
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "createmultisig", "params": [2, ["RJnVEQgucK1iwiRjfTZmreXkF49KgTErDn","RCVyjn9MQ8Tw6YRJnDcsx67kfsmfUgLdfw"]] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"address": "bNnKtDC6UuSt5kGJewCQ5b2BhzFK3HTQUV",
"redeemScript": "522103ae084021ff011b527c34914d2c40148080c09254dd3c7d1f31f32549b53ccd232103bee23783f726ba81b5977473b172497260d9c261b9ef9f5a9dd51c545c8db0ac52ae"
},
"error": null,
"id": "curltest"
}decodeccopret scriptPubKey
The decodeccopret method decodes the OP RETURN data from a CC transaction to output the EVALCODE and function id of the method that produced the transaction.
The OP RETURN data from a CC transaction can be found by following these steps:
vout key; it is an array of jsonsscriptPubkey, and which has the type:nulldata key pairhex value from that scriptPubkey jsonvout json’s scriptPubkey json has the type:cryptocondition key pair| Name | Type | Description |
|---|---|---|
| scriptPubKey | (string) | the hex-string format scriptPubKey of the type : nulldata in the vout of a transaction produced by a CC module |
| Name | Type | Description |
|---|---|---|
| result | (string) | whether the call succeeded |
| OpRets | (json) | a json containing the keys EVALCODE and function id |
| eval_code | (hexadecimal number) | the EVALCODE of the method that produced the transaction |
| function | (string) | the function id of the method that produced the transaction |
./hush-cli decodeccopret 6a2412782103d31479e789014a96ba6dd60d50210045aa8292fe693f293d44615929f04cf57a
Response:
{
"result": "success",
"OpRets": [
{
"eval_code": "0x12",
"function": "x"
}
]
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "decodeccopret", "params": ["6a2412782103d31479e789014a96ba6dd60d50210045aa8292fe693f293d44615929f04cf57a"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"result": "success",
"OpRets": [
{
"eval_code": "0x12",
"function": "x"
}
]
},
"error": null,
"id": "curltest"
}estimatefee nblocks
The estimatefee method estimates the approximate fee per kilobyte. The method is needed for a transaction to begin confirmation within nblocks blocks.
The value -1.0 is returned if not enough transactions and blocks have been observed to make an estimate.
| Name | Type | Description |
|---|---|---|
| nblocks | (numeric) | the number of blocks within which the fee should be tested |
| Name | Type | Description |
|---|---|---|
| n | (numeric) | the estimated fee |
./hush-cli estimatefee 6
Response:
0.00019376estimatepriority nblocks
The estimatepriority method estimates the approximate priority of a zero-fee transaction, when it needs to begin confirmation within nblocks blocks.
The value -1.0 is returned if not enough transactions and blocks have been observed to make an estimate.
| Name | Type | Description |
|---|---|---|
| nblocks | (numeric) | a statement indicating within how many blocks the transaction should be confirmed |
| Name | Type | Description |
|---|---|---|
| n | (numeric) | the estimated priority |
./hush-cli estimatepriority 6
Response:
-1invalidateblock “hash”
The invalidateblock method permanently marks a block as invalid, as if it violated a consensus rule.
| Name | Type | Description |
|---|---|---|
| hash | (string, required) | the hash of the block to mark as invalid |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli invalidateblock "02f51fb2793b0728050c5e983ffed669594e0a2dda01dcb7a68d129fd87436e0"
Response:
(none)
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "invalidateblock", "params": ["02f51fb2793b0728050c5e983ffed669594e0a2dda01dcb7a68d129fd87436e0"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": null,
"error": null,
"id": "curltest"
}reconsiderblock “hash”
The reconsiderblock method removes invalidity status of a block and its descendants, reconsidering them for activation. This can be used to undo the effects of the invalidateblock method.
| Name | Type | Description |
|---|---|---|
| hash | (string, required) | the hash of the block to reconsider |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli reconsiderblock "02f51fb2793b0728050c5e983ffed669594e0a2dda01dcb7a68d129fd87436e0"
Response:
(none)txnotarizedconfirmed txid
The txnotarizedconfirmed method returns information about a transaction’s state of confirmation.
If the transaction is on a chain that has Komodo’s dPoW security service, the method returns true if the transaction is notarized.
If the chain does not have dPoW, the method returned true if the confirmation number is greater than 60.
| Name | Type | Description |
|---|---|---|
| “txid” | (string, required) | the transaction id |
| Name | Type | Description |
|---|---|---|
| “result” | (boolean) | whether the transaction is confirmed, for dPoW-based chains; for non-dPoW chains, the value indicates whether the transaction has 60 or more confirmations |
./hush-cli txnotarizedconfirmed ce1e3df1fb24ab3301b4032c3a0af466ca03b9365f8c649511bdd72f5519fecb
Response:
{
"result": true
}validateaddress “hushaddress”
The validateaddress method returns information about the given address.
| Name | Type | Description |
|---|---|---|
| “address” | (string, required) | the address to validate |
| Name | Type | Description |
|---|---|---|
| “isvalid” | (boolean) | indicates whether the address is valid. If it is not, this is the only property returned. |
| “address” | (string) | the address validated |
| “scriptPubKey” | (string) | the hex encoded scriptPubKey generated by the address |
| “ismine” | (boolean) | indicates whether the address is yours |
| “isscript” | (boolean) | whether the key is a script |
| “pubkey” | (string) | the hex value of the raw public key |
| “iscompressed” | (boolean) | whether the address is compressed |
| “account” | (string) | DEPRECATED the account associated with the address; “” is the default account |
./hush-cli validateaddress "RDNC9mLrN48pVGDQ5jSoPb2nRsUPJ5t2R7"
Response:
{
"isvalid": true,
"address": "RDNC9mLrN48pVGDQ5jSoPb2nRsUPJ5t2R7",
"scriptPubKey": "76a9142cd2a4e3d1c2738ee4fce61e73ea822dcaacb9b488ac",
"segid": 9,
"ismine": true,
"iswatchonly": false,
"isscript": false,
"pubkey": "03c376b00b3a2ae43b8bf103a6c6962b241de684383301fe628a460b68a79ac1d8",
"iscompressed": true,
"account": ""
}verifymessage “address” “signature” “message”
The verifymessage method verifies a signed message.
::: tip
See also signmessage.
:::
| Name | Type | Description |
|---|---|---|
| “address” | (string, required) | the address to use for the signature |
| “signature” | (string, required) | the signature provided by the signer in base 64 encoding |
| “message” | (string, required) | the message that was signed |
| Name | Type | Description |
|---|---|---|
| true/false | (boolean) | indicates whether the signature is verified |
Create the signature:
Command:./hush-cli signmessage "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ" "my message"
Response:
H1y0mn/wRv56r1bcfkbQtzjG6XeWSelAsyayBuCwEL9XGXs7ieU55dryt/cFWM9gnRFI7gS01AByuSqRs+o/AZs=
Verify the signature:
Command:./hush-cli verifymessage "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ" "H1y0mn/wRv56r1bcfkbQtzjG6XeWSelAsyayBuCwEL9XGXs7ieU55dryt/cFWM9gnRFI7gS01AByuSqRs+o/AZs=" "my message"
Response:
true
hushd software, and are made available through the hush-cli software.addmultisigaddress nrequired [ “key”, … ] ( “account” )
The addmultisigaddress method adds a multi-signature address to the wallet, where nrequired indicates the number of keys (out of the total provided) required to execute a transaction.
The keys function as signatures, allowing multiple parties or entities to manage an account. Each key in the array can be an address or a hex-encoded public key.
::: tip
DEPRECATED: If account is specified, the method assigns the multi-signature address to that account.
:::
| Name | Type | Description |
|---|---|---|
| nrequired | (numeric, required) | the number of required keys (out of the n submitted) |
| “keysobject” | (string, required) | a json array of addresses or hex-encoded public keys |
| “address” | (string) | the address or hex-encoded public key |
| “account” | (string, optional) | DEPRECATED: if provided, “account” MUST be set to the empty string “” to represent the default account; passing any other string will result in an error |
| Name | Type | Description |
|---|---|---|
| “address” | (string) | an address associated with the keys |
Add a multisig address from 2 addresses:
Command:./hush-cli addmultisigaddress 2 '["RSWwtqsNr9mW21UXRm6Lz4AzQnj4pVzzkp","RW8d8EChHTooVbwF3reqHYgkzWCnJFLXgh"]'
Response
bLz2YZ7Mm8MgPc9mPNiFqhjFPbFZU4WUD5
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "addmultisigaddress", "params": [2, ["RL4CuA2MSAbBiqJKQEr2TKnKT2fSwK99mG","RBYVFCxpJdLgvUixhguxzuH1TJpoNLYCJ6"]] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": "bNdB9fAt9HmQD8CmBjkY6QwmrNSBrbzsgA",
"error": null,
"id": "curltest"
}backupwallet “destination”
The backupwallet method safely copies the wallet.dat file to the indicated destination. The destination input accepts only alphanumeric characters.
::: tip
This method requires that the coin daemon have the exportdir runtime parameter enabled.
:::
| Name | Type | Description |
|---|---|---|
| “destination” | (string, required) | the destination filename, saved in the directory set by the exportdir runtime parameter |
| Name | Type | Description |
|---|---|---|
| “path” | (string) | the full path of the destination file |
./hush-cli backupwallet "mybackupdata"
/home/myusername/myexportdir/mybackupdata
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "backupwallet", "params": ["backupdata"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": "/home/myusername/Desktop/backupdata",
"error": null,
"id": "curltest"
}
dumpprivkey “address”
The dumpprivkey method reveals the private key corresponding to the indicated address.
::: tip
See also importprivkey.
:::
| Name | Type | Description |
|---|---|---|
| “address” | (string, required) | the address for the private key |
| Name | Type | Description |
|---|---|---|
| “data” | (string) | the private key |
./hush-cli dumpprivkey "RTcwYaQPDVN7V9SdfFHARWnoB7vcpSfdvs"
Response
DONOTUSExxxxxxxxxxxxxxxxxxxx4KkCmRnnSg7iXvAUjoYivC8K
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "dumpprivkey", "params": ["RTcwYaQPDVN7V9SdfFHARWnoB7vcpSfdvs"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": "DONOTUSExxxxxxxxxxxxxxxxxxxx4KkCmRnnSg7iXvAUjoYivC8K",
"error": null,
"id": "curltest"
}dumpwallet “filename”
The dumpwallet method dumps all transparent-address wallet keys into a file, using a human-readable format.
Overwriting an existing file is not permitted. The destination parameter accepts only alphanumeric characters.
::: tip
This method requires that the coin daemon have the exportdir runtime parameter enabled.
:::
| Name | Type | Description |
|---|---|---|
| “filename” | (string, required) | the filename, saved in the folder set by the exportdir runtime parameter |
| Name | Type | Description |
|---|---|---|
| “path” | (string) | the full path of the destination file |
./hush-cli dumpwallet "test"
Response:
/home/myusername/myexportdir/test
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "dumpwallet", "params": ["test"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "/home/myusername/myexportdir/test",
"error": null,
"id": "curltest"
}encryptwallet “passphrase”
::: warning
Using the encryptwallet method will shutdown the Hush daemon (hushd).
:::
:::tip
This feature is available only on chains where -ac_public is enabled. Chains that feature private transactions cannot use this feature.
:::
The encryptwallet method encrypts the wallet with the indicated passphrase.
For more information, please see these instructions: Encrypt Hush’s wallet.dat File
This method is for first-time encryption only. After the first encryption, any calls that interact with private keys will require the passphrase via walletpassphrase prior to calling the corresponding method. This includes methods that create a transaction, dump a private key for an address, sign a transaction, etc.
| Name | Type | Description |
|---|---|---|
| passphrase | (string) | the passphrase for wallet encryption; the passphrase must be at least 1 character, but should be many |
| Text Response |
|---|
| wallet encrypted; Hush server stopping, restart to run with encrypted wallet. The keypool has been flushed, you need to make a new backup. |
./hush-cli encryptwallet "mypassphrase"
Response
wallet encrypted; Hush server stopping, restart to run with encrypted wallet. The keypool has been flushed, you need to make a new backup.
./hush-cli walletpassphrase "mypassphrase" 60
Response
(disabled)
./hush-cli walletlock
Response
(No response)
As a json rpc call:
Command:curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "encryptwallet", "params": ["mypassphrase"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result":"wallet encrypted; Hush server stopping, restart to run with encrypted wallet. The keypool has been flushed, you need to make a new backup.",
"error":null,
"id":"curltest"
}getaccount “address”
The getaccount method returns the account associated with the given address.
| Name | Type | Description |
|---|---|---|
| “address” | (string, required) | the address |
| Name | Type | Description |
|---|---|---|
| “accountname” | (string) | the account address |
./hush-cli getaccount "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ"
Response
(deprecated)
You can find your rpcuser, rpcpassword, and rpcport in hush3.confhush3 hush3file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaccount", "params": ["RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
(deprecated)getaccountaddress “account”
::: tip
DEPRECATED
:::
The getaccountaddress method returns the current address for receiving payments to this account.
| Name | Type | Description |
|---|---|---|
| “account” | (string, required) | MUST be set to the empty string “” to represent the default account; passing any other string will result in an error |
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the account address |
./hush-cli getaccountaddress
Response
(deprecated)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaccountaddress", "params": ["myaccount"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
(deprecated)getaddressesbyaccount “account”
::: tip
DEPRECATED
:::
The getaddressesbyaccount method returns the list of addresses for the given account.
| Name | Type | Description |
|---|---|---|
| “account” | (string, required) | MUST be set to the empty string “” to represent the default account; passing any other string will result in an error |
| Name | Type | Description |
|---|---|---|
| “address” | (string) | an address associated with the given account |
./hush-cli getaddressesbyaccount "tabby"
Response
(deprecated)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getaddressesbyaccount", "params": ["tabby"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(deprecated)
getbalance ( “account” minconf includeWatchonly )
The getbalance method returns the server’s total available balance.
::: tip
The account input is deprecated.
:::
| Name | Type | Description |
|---|---|---|
| “account” | (string, optional) | DEPRECATED if provided, it MUST be set to the empty string "" or to the string "*" |
| minconf | (numeric, optional, default=1) | only include transactions confirmed at least this many times |
| includeWatchonly | (bool, optional, default=false) | also include balance in watchonly addresses (see importaddress) |
| Name | Type | Description |
|---|---|---|
| amount | (numeric) | the total amount |
The total amount in the wallet:
Command:./hush-cli getbalance
Response
10.05000000
The total amount in the wallet where at least five blocks are confirmed:
Command:./hush-cli getbalance "*" 5
Response
10.05000000
As a json rpc call:
Command:curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getbalance", "params": ["", 6] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": 10.09234883,
"error": null,
"id": "curltest"
}getbalance64
::: tip
This method is part of the new ac_staked functionality.
:::
The getbalance64 method is used only on Smart Chains that are utilizing the ac_staked functionality. On KMD-based Proof-of-Stake (PoS) Smart Chains, all staked coins are placed into one of 64 segments (segid‘s’). The getbalance64 method returns the balance of coins in each segid. For further information, please reach out to our support team.
getnewaddress ( “account” )
The getnewaddress method returns a new address for receiving payments.
| Name | Type | Description |
|---|---|---|
| “account” | (string, optional) | DEPRECATED: If provided, the account MUST be set to the empty string "" to represent the default account; passing any other string will result in an error |
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the new address |
./hush-cli getnewaddress
Response:
"RYDuQ2oQCCz1PQNxUQTDAaRinWKiCoT2E6"
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getnewaddress", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "R9iQRG6J9eY8SwaCcYZ65QJxg5UhgLC5Rx",
"error": null,
"id": "curltest"
}getrawchangeaddress
The getrawchangeaddress returns a new address that can be used to receive change.
::: tip
This is for use with raw transactions, NOT normal use.
:::
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “address” | (string) | the address |
./hush-cli getrawchangeaddress
Response:
RS8oqzbjShKhftmuk2RpRmHH2hTAukp6yP
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getrawchangeaddress", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": "RJSDZjp7kjBNhHsbECDE1jwYNK7af41pZN",
"error": null,
"id": "curltest"
}getreceivedbyaccount “account” ( minconf )
::: tip
DEPRECATED
:::
The getreceivedbyaccount method returns the total amount received by account in transactions with at least minconf confirmations.
| Name | Type | Description |
|---|---|---|
| “account” | (string, required) | MUST be set to the empty string “” to represent the default account; passing any other string will result in an error |
| minconf | (numeric, optional, default=1) | only include transactions confirmed at least this many times |
| Name | Type | Description |
|---|---|---|
| amount | (numeric) | the total amount received for this account |
./hush-cli getreceivedbyaccount ""
Response
(deprecated)getreceivedbyaddress “address” ( minconf )
The getreceivedbyaddress method returns the total amount received by the given address in transactions with at least minconf confirmations.
| Name | Type | Description |
|---|---|---|
| “address” | (string, required) | the address for transactions |
| minconf | (numeric, optional, default=1) | only include transactions confirmed at least this many times |
| Name | Type | Description |
|---|---|---|
| amount | (numeric) | the total amount of the relevant coin received at this address |
./hush-cli getreceivedbyaddress "RJSDZjp7kjBNhHsbECDE1jwYNK7af41pZN"
Response
10.0500000
Command:
./hush-cli getreceivedbyaddress "RJSDZjp7kjBNhHsbECDE1jwYNK7af41pZN" 0
Response
10.0500000
Command:
./hush-cli getreceivedbyaddress "RJSDZjp7kjBNhHsbECDE1jwYNK7af41pZN" 6
Response
10.0500000
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getreceivedbyaddress", "params": ["RJSDZjp7kjBNhHsbECDE1jwYNK7af41pZN", 6] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": 0,
"error": null,
"id": "curltest"
}gettransaction “txid” ( includeWatchonly )
The gettransaction method queries detailed information about transaction txid. This command applies only to txid's that are in the user’s local wallet.
| Name | Type | Description |
|---|---|---|
| “txid” | (string, required) | the transaction id |
| “includeWatchonly” | (bool, optional, default=false) | whether to include watchonly addresses in the returned balance calculation and in the details[] returned values |
| Name | Type | Description |
|---|---|---|
| “amount” | (numeric) | the transaction amount |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations (number of blocks on top of this transaction’s block) |
| “blockhash” | (string) | the block hash |
| “blockindex” | (numeric) | the block index |
| “blocktime” | (numeric) | the time in seconds since epoch (1 Jan 1970 GMT) |
| “txid” | (string) | the transaction id |
| “time” | (numeric) | the transaction time in seconds since epoch (1 Jan 1970 GMT) |
| “timereceived” | (numeric) | the time received in seconds since epoch (1 Jan 1970 GMT) |
| “details” : [ … ] | (array) | |
| “account” | (string) | DEPRECATED the account name involved in the transaction; can be “” for the default account |
| “address” | (string) | the address involved in the transaction |
| “category” | (string) | the category - either send or receive |
| “amount” | (numeric) | the amount |
| “vout” | (numeric) | the vout value |
| “vjoinsplit” : [ … ] | (array of json objects) | |
| “anchor” | (string) | merkle root of note commitment tree |
| “nullifiers” : [ … ] | (array of strings) | <!–Need these? If not, let’s leave a comment here saying why they’re not needed, so that next time we don’t forget. --> |
| “hex” | (string) | |
| “commitments” : [ … ] | (array of strings) | |
| “hex” | (string) | |
| “macs” : [ … ] | (array of strings) | |
| “hex” | (string) | |
| “vpub_old” | (numeric) | the amount removed from the transparent value pool |
| “vpub_new” | (numeric) | the amount added to the transparent value pool |
| “hex” | (string) | transaction data translated into hex |
./hush-cli gettransaction "34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a"
Response
{
"amount": 0.000001,
"rawconfirmations": 14,
"confirmations": 1,
"blockhash": "07eb80d845eae646a95351a47a1b54964610f3caf4d4ff53750d0de66fbfc525",
"blockindex": 1,
"blocktime": 1552585479,
"expiryheight": 1268793,
"txid": "34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a",
"walletconflicts": [],
"time": 1552585444,
"timereceived": 1552585444,
"vjoinsplit": [],
"details": [
{
"account": "",
"address": "RGmfyV6GLkNXTSM5XaxtpwPrw4R7iiHEa2",
"category": "receive",
"amount": 0.000001,
"vout": 1,
"size": 254
}
],
"hex": "0400008085202f8901310bd18e1c5de58eed0482e13c855763e83fadb19c1abd330e62c07a13370edf1b0000006a47304402207a607ff3b479317dd41842f024380994ec7e4353c0cb33bff32bc795cfa8a7c202205ff036aeee1760f0677d22155be8210b78ffffb3b03f568304278a914fe6e0d1012103336ca9db27cb6e882830e20dc525884e27dc94d557a5e68b972a5cbf9e8c62a8feffffff0254738e1d00000000232103336ca9db27cb6e882830e20dc525884e27dc94d557a5e68b972a5cbf9e8c62a8ac64000000000000001976a914522bd057d4304d6204187c99e6dece0c29bdbe9788acce928a5c395c13000000000000000000000000"
}
Command:
./hush-cli gettransaction "34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a" true
Response
{
"amount": 0.000001,
"rawconfirmations": 14,
"confirmations": 1,
"blockhash": "07eb80d845eae646a95351a47a1b54964610f3caf4d4ff53750d0de66fbfc525",
"blockindex": 1,
"blocktime": 1552585479,
"expiryheight": 1268793,
"txid": "34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a",
"walletconflicts": [],
"time": 1552585444,
"timereceived": 1552585444,
"vjoinsplit": [],
"details": [
{
"account": "",
"address": "RGmfyV6GLkNXTSM5XaxtpwPrw4R7iiHEa2",
"category": "receive",
"amount": 0.000001,
"vout": 1,
"size": 254
}
],
"hex": "0400008085202f8901310bd18e1c5de58eed0482e13c855763e83fadb19c1abd330e62c07a13370edf1b0000006a47304402207a607ff3b479317dd41842f024380994ec7e4353c0cb33bff32bc795cfa8a7c202205ff036aeee1760f0677d22155be8210b78ffffb3b03f568304278a914fe6e0d1012103336ca9db27cb6e882830e20dc525884e27dc94d557a5e68b972a5cbf9e8c62a8feffffff0254738e1d00000000232103336ca9db27cb6e882830e20dc525884e27dc94d557a5e68b972a5cbf9e8c62a8ac64000000000000001976a914522bd057d4304d6204187c99e6dece0c29bdbe9788acce928a5c395c13000000000000000000000000"
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "gettransaction", "params": ["34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": {
"amount": 0.000001,
"rawconfirmations": 19,
"confirmations": 1,
"blockhash": "07eb80d845eae646a95351a47a1b54964610f3caf4d4ff53750d0de66fbfc525",
"blockindex": 1,
"blocktime": 1552585479,
"expiryheight": 1268793,
"txid": "34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a",
"walletconflicts": [],
"time": 1552585444,
"timereceived": 1552585444,
"vjoinsplit": [],
"details": [
{
"account": "",
"address": "RGmfyV6GLkNXTSM5XaxtpwPrw4R7iiHEa2",
"category": "receive",
"amount": 0.000001,
"vout": 1,
"size": 254
}
],
"hex": "0400008085202f8901310bd18e1c5de58eed0482e13c855763e83fadb19c1abd330e62c07a13370edf1b0000006a47304402207a607ff3b479317dd41842f024380994ec7e4353c0cb33bff32bc795cfa8a7c202205ff036aeee1760f0677d22155be8210b78ffffb3b03f568304278a914fe6e0d1012103336ca9db27cb6e882830e20dc525884e27dc94d557a5e68b972a5cbf9e8c62a8feffffff0254738e1d00000000232103336ca9db27cb6e882830e20dc525884e27dc94d557a5e68b972a5cbf9e8c62a8ac64000000000000001976a914522bd057d4304d6204187c99e6dece0c29bdbe9788acce928a5c395c13000000000000000000000000"
},
"error": null,
"id": "curltest"
}getunconfirmedbalance
The getunconfirmedbalance method returns the server’s total unconfirmed balance.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli getunconfirmedbalance
Response
10.05000000
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getunconfirmedbalance", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": 10.05,
"error": null,
"id": "curltest"
}getwalletinfo
The getwalletinfo method returns an object containing various information about the wallet state.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “walletversion” | (numeric) | the wallet version |
| “balance” | (numeric) | the total confirmed balance of the wallet |
| “unconfirmed_balance” | (numeric) | the total unconfirmed balance of the wallet |
| “immature_balance” | (numeric) | the total immature balance of the wallet |
| “txcount” | (numeric) | the total number of transactions in the wallet |
| “keypoololdest” | (numeric) | the timestamp (seconds since GMT epoch) of the oldest pre-generated key in the key pool |
| “keypoolsize” | (numeric) | how many new keys are pre-generated |
| “unlocked_until” | (numeric) | the timestamp in seconds since epoch (midnight Jan 1 1970 GMT) that the wallet is unlocked for transfers, or 0 if the wallet is locked |
| “paytxfee” | (numeric) | the transaction fee configuration, given as the relevant COIN per KB |
./hush-cli getwalletinfo
Response:
{
"walletversion": 60000,
"balance": 10.01334496,
"unconfirmed_balance": 0.0,
"immature_balance": 0.0001,
"txcount": 106,
"keypoololdest": 1536889653,
"keypoolsize": 101,
"paytxfee": 0.0
}
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getwalletinfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": {
"walletversion": 60000,
"balance": 10.01334496,
"unconfirmed_balance": 0,
"immature_balance": 0.0001,
"txcount": 106,
"keypoololdest": 1536889653,
"keypoolsize": 101,
"paytxfee": 0
},
"error": null,
"id": "curltest"
}importaddress “address” ( “label” rescan )
The importaddress method adds an address or script (in hex) that can be watched as if it were in your wallet, although it cannot be used to spend.
::: tip
This call can take an increased amount of time to complete if rescan is true.
:::
| Name | Type | Description |
|---|---|---|
| “address” | (string, required) | the address to watch |
| “label” | (string, optional, default="") | an optional label |
| rescan | (boolean, optional, default=true) | rescan the wallet for transactions |
| Name | Type | Description |
|---|---|---|
| (none) |
Import an address with rescan:
Command:./hush-cli importaddress "RJSDZjp7kjBNhHsbECDE1jwYNK7af41pZN"
Response
(none)
Command:
./hush-cli importaddress "RJSDZjp7kjBNhHsbECDE1jwYNK7af41pZN" "testing" false
Response
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "importaddress", "params": ["R9z796AehK5b6NCPeVkGUHSpJnawerf8oP", "testing", false] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": null,
"error": null,
"id": "curltest"
}importkey “komodoprivkey” ( “label” rescan )
The importprivkey method adds a private key to your wallet.
::: tip
This call can take minutes to complete if rescan is true.
:::
::: tip
See also dumpprivkey.
:::
| Name | Type | Description |
|---|---|---|
| “privkey” | (string, required) | the private key (see dumpprivkey) |
| “label” | (string, optional, default="") | an optional label |
| rescan | (boolean, optional, default=true) | rescan the wallet for transactions |
| Name | Type | Description |
|---|---|---|
| addresses | (string) | the public address |
./hush-cli importprivkey "DONOTUSExxxxxxxxxxxxxxxxxxxxj4Xu9jjinhLpffhdtoKg5gar2"
Response
R9z796AehK5b6NCPeVkGUHSpJnawerf8oP
Command:
./hush-cli importprivkey "DONOTUSExxxxxxxxxxxxxxxxxxxxj4Xu9jjinhLpffhdtoKg5gar2" "testing" false
Response
RFtA32tttJm89VWRWPCQtV8bkQ1FvE1MBG
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "importprivkey", "params": ["UwibHKsYfiM19BXQmcUwAfw331GzGQK8aoPqqYEbyoPrzc2965nE", "testing", false] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "RC5qhqgYRzf3dUXGAst9ah5LcuLjmMgT64",
"error": null,
"id": "curltest"
}importwallet “filename”
The importwallet method imports transparent-address keys from a wallet-dump file (see dumpwallet).
| Name | Type | Description |
|---|---|---|
| “filename” | (string, required) | the wallet file |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli importwallet "path/to/exportdir/nameofbackup"
Response
(none)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "importwallet", "params": ["path/to/exportdir/nameofbackup"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport
Response
{
"result": null,
"error": null,
"id": "curltest"
}
keypoolrefill ( newsize )
The keypoolrefill method refills the keypool.
| Name | Type | Description |
|---|---|---|
| newsize | (numeric, optional, default=100) | the new keypool size |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli keypoolrefill
Response
(none)
Command:
./hush3-cli keypoolrefill 100
Response
(none)
You can find your rpcuser, rpcpassword, and rpcport in
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "keypoolrefill", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": null,
"error": null,
"id": "curltest"
}listaccounts ( minconf includeWatchonly )
::: tip
DEPRECATED
:::
The listaccounts method returns an object that has account names as keys and account balances as values.
| Name | Type | Description |
|---|---|---|
| minconf | (numeric, optional, default=1) | only include transactions with at least this many confirmations |
| includeWatchonly | (bool, optional, default=false) | include balances in watchonly addresses (see ‘importaddress’) |
| Name | Type | Description |
|---|---|---|
| “account_number” | (numeric) | the property name is the account name, and the value is the total balance for the account |
./hush-cli listaccounts 6
Response
(deprecated)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "listaccounts", "params": [6] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
(deprecated)listaddressgroupings
The listaddressgroupings method lists groups of addresses which have had their common ownership made public by common use as inputs or as the resulting change in past transactions.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “address”, | (string) | the address |
| amount, | (numeric) | the amount |
| “account” | (string, optional) | (DEPRECATED) the account |
./hush-cli listaddressgroupings
Response:
(note how there are two separate, unique groupings of addresses)
[
[
[
"RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ",
9.99304496
],
[
"RDNC9mLrN48pVGDQ5jSoPb2nRsUPJ5t2R7",
0.00040000,
""
],
[
"RJSDZjp7kjBNhHsbECDE1jwYNK7af41pZN",
0.01000000
]
],
[
[
"RTcwYaQPDVN7V9SdfFHARWnoB7vcpSfdvs",
0.00990000,
""
]
]
]
You can find your rpcuser, rpcpassword, and rpcport in the hush3.conf file.
Command:
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "listaddressgroupings", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
[
["RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ", 9.99304496],
["RDNC9mLrN48pVGDQ5jSoPb2nRsUPJ5t2R7", 0.0004, ""],
["RJSDZjp7kjBNhHsbECDE1jwYNK7af41pZN", 0.01]
],
[["RTcwYaQPDVN7V9SdfFHARWnoB7vcpSfdvs", 0.0099, ""]]
],
"error": null,
"id": "curltest"
}listlockunspent
The listlockunspent method returns a list of temporarily non-spendable outputs.
::: tip
See the lockunspent call to lock and unlock transactions for spending.
:::
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “txid” | (string) | the transaction id locked |
| “vout” | (numeric) | the vout value |
./hush-cli listlockunspent
Response
[
{
"txid": "d7ba45296c66e16eb61f27a4eef8848c7f5579fe801f277c1b0e074a4f47d6fd",
"vout": 0
}
]
You can find your rpcuser, rpcpassword, and rpcport in the hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "listlockunspent", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"txid": "d7ba45296c66e16eb61f27a4eef8848c7f5579fe801f277c1b0e074a4f47d6fd",
"vout": 0
}
],
"error": null,
"id": "curltest"
}listreceivedbyaccount ( minconf includeempty includeWatchonly )
::: warning
DEPRECATED
:::
The listreceivedbyaccount method lists balances by account.
| Name | Type | Description |
|---|---|---|
| minconf | (numeric, optional, default=1) | the minimum number of confirmations before payments are included |
| includeempty | (boolean, optional, default=false) | whether to include accounts that haven’t received any payments |
| includeWatchonly | (bool, optional, default=false) | whether to include watchonly addresses (see ‘importaddress’) |
| Name | Type | Description |
|---|---|---|
| “involvesWatchonly” | (bool) | only returned if the imported addresses were involved in the transaction |
| “account” | (string) | the account name of the receiving account |
| “amount” | (numeric) | the total amount received by addresses with this account |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations of the most recent transaction included (number of blocks on top of this transaction’s block) |
./hush-cli listreceivedbyaccount
Response:
[
{
"account": "",
"amount": 0.000001,
"rawconfirmations": 21,
"confirmations": 21
}
]
Command:
./hush-cli listreceivedbyaccount 6 true
Response:
[
{
"account": "",
"amount": 0.000001,
"rawconfirmations": 23,
"confirmations": 23
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "listreceivedbyaccount", "params": [6, true, true] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"account": "",
"amount": 0.000001,
"rawconfirmations": 24,
"confirmations": 24
}
],
"error": null,
"id": "curltest"
}listreceivedbyaddress ( minconf includeempty includeWatchonly)
The listreceivedbyaddress method lists balances by receiving address.
| Name | Type | Description |
|---|---|---|
| minconf | (numeric, optional, default=1) | the minimum number of confirmations before payments are included |
| includeempty | (numeric, optional, default=false) | whether to include addresses that haven’t received any payments |
| includeWatchonly | (bool, optional, default=false) | whether to include watchonly addresses (see ‘importaddress’) |
| Name | Type | Description |
|---|---|---|
| “involvesWatchonly” | (bool) | only returned if imported addresses were involved in transaction |
| “address” | (string) | the receiving address |
| “account” | (string) | DEPRECATED the account of the receiving address; the default account is “” |
| “amount” | (numeric) | the total amount received by the address |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations of the most recent transaction included (number of blocks on top of this transaction’s block) |
./hush3-cli listreceivedbyaddress
Response
[
{
"address": "RGmfyV6GLkNXTSM5XaxtpwPrw4R7iiHEa2",
"account": "",
"amount": 0.000001,
"rawconfirmations": 40,
"confirmations": 40,
"txids": [
"34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a"
]
}
]
Command:
./hush-cli listreceivedbyaddress 6 true
Response
[
{
"address": "RGmfyV6GLkNXTSM5XaxtpwPrw4R7iiHEa2",
"account": "",
"amount": 0.000001,
"rawconfirmations": 41,
"confirmations": 41,
"txids": [
"34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a"
]
},
{
"address": "RSMmyzk2cZ7xJdDx62wAZbvM5dzxH8CPqv",
"account": "",
"amount": 0.0,
"rawconfirmations": 0,
"confirmations": 0,
"txids": []
},
{
"address": "RVErfGzpdNSLrg19FVAuet6nXGDaWnqiVc",
"account": "",
"amount": 0.0,
"rawconfirmations": 0,
"confirmations": 0,
"txids": []
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "listreceivedbyaddress", "params": [6, true, true] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
{
"address": "RGmfyV6GLkNXTSM5XaxtpwPrw4R7iiHEa2",
"account": "",
"amount": 0.000001,
"rawconfirmations": 41,
"confirmations": 41,
"txids": [
"34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a"
]
},
{
"address": "RSMmyzk2cZ7xJdDx62wAZbvM5dzxH8CPqv",
"account": "",
"amount": 0.0,
"rawconfirmations": 0,
"confirmations": 0,
"txids": []
},
{
"address": "RVErfGzpdNSLrg19FVAuet6nXGDaWnqiVc",
"account": "",
"amount": 0.0,
"rawconfirmations": 0,
"confirmations": 0,
"txids": []
}
],
"error": null,
"id": "curltest"
}listsinceblock ( “blockhash” target-confirmations includeWatchonly )
The listsinceblock method queries all transactions in blocks since block blockhash, or all transactions if blockhash is omitted.
| Name | Type | Description |
|---|---|---|
| “blockhash” | (string, optional) | the block hash from which to list transactions |
| target-confirmations | (numeric, optional) | the confirmations required (must be 1 or more) |
| includeWatchonly | (bool, optional, default=false) | include transactions to watchonly addresses (see also ‘importaddress’) |
| Name | Type | Description |
|---|---|---|
| “transactions”: | ||
| “account” | (string) | DEPRECATED the account name associated with the transaction; will be “” for the default account |
| “address” | (string) | the address of the transaction (not present for move transactions – category = move) |
| “category” | (string) | the transaction category; send has negative amounts, receive has positive amounts |
| “amount” | (numeric) | the amount of the relevant currency – negative for the send category, and for the move category for moves outbound. It is positive for the receive category, and for the move category for inbound funds. |
| “vout” | (numeric) | the vout value |
| “fee” | (numeric) | the amount of the fee; this value is negative and only available for the send category of transactions |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations of the transaction; available for send and receive category of transactions (number of blocks on top of this transaction’s block) |
| “blockhash” | (string) | the block hash containing the transaction; available for the send and receive categories of transactions |
| “blockindex” | (numeric) | the block index containing the transaction; available for the send and receive categories of transactions |
| “blocktime” | (numeric) | the block time in seconds since epoch (1 Jan 1970 GMT) |
| “txid” | (string) | the transaction id; available for send and receive categories of transactions |
| “time” | (numeric) | the transaction time in seconds since epoch (Jan 1 1970 GMT) |
| “timereceived” | (numeric) | the time received in seconds since epoch (Jan 1 1970 GMT); available for send and receive category of transactions |
| “comment” | (string) | whether a comment is associated with the transaction |
| “to” | (string) | whether a ‘to’ comment is associated with the transaction |
| “lastblock” | (string) | the hash of the last block |
./hush3-cli listsinceblock
Response:
{
"transactions": [
{
"account": "",
"address": "RGmfyV6GLkNXTSM5XaxtpwPrw4R7iiHEa2",
"category": "receive",
"amount": 0.000001,
"vout": 1,
"rawconfirmations": 44,
"confirmations": 44,
"blockhash": "07eb80d845eae646a95351a47a1b54964610f3caf4d4ff53750d0de66fbfc525",
"blockindex": 1,
"blocktime": 1552585479,
"expiryheight": 1268793,
"txid": "34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a",
"walletconflicts": [],
"time": 1552585444,
"timereceived": 1552585444,
"vjoinsplit": [],
"size": 254
}
],
"lastblock": "05686392a3011a180988246b3b0343bc4eec992c101d2e651c6ee786af1b2fb5"
}
Command:
./hush-cli listsinceblock "029f11d80ef9765602235e1bc9727e3eb6ba20839319f761fee920d63401e327" 6
Response:
{
"transactions": [
{
"account": "",
"address": "RGmfyV6GLkNXTSM5XaxtpwPrw4R7iiHEa2",
"category": "receive",
"amount": 0.000001,
"vout": 1,
"rawconfirmations": 45,
"confirmations": 45,
"blockhash": "07eb80d845eae646a95351a47a1b54964610f3caf4d4ff53750d0de66fbfc525",
"blockindex": 1,
"blocktime": 1552585479,
"expiryheight": 1268793,
"txid": "34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a",
"walletconflicts": [],
"time": 1552585444,
"timereceived": 1552585444,
"vjoinsplit": [],
"size": 254
}
],
"lastblock": "08db1a09b32ebb55f026c41d5555281ebeae4c9eb8b36e88db62b6f1d7fd12d1"
}
You can find your rpcuser, rpcpassword, and rpcport in the hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "listsinceblock", "params": ["029f11d80ef9765602235e1bc9727e3eb6ba20839319f761fee920d63401e327", 6] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": {
"transactions": [
{
"account": "",
"address": "RGmfyV6GLkNXTSM5XaxtpwPrw4R7iiHEa2",
"category": "receive",
"amount": 0.000001,
"vout": 1,
"rawconfirmations": 46,
"confirmations": 46,
"blockhash": "07eb80d845eae646a95351a47a1b54964610f3caf4d4ff53750d0de66fbfc525",
"blockindex": 1,
"blocktime": 1552585479,
"expiryheight": 1268793,
"txid": "34efdb82ec718dede04feccecdc44f119cb7263f11c56ec3d7bf6234c9d0e27a",
"walletconflicts": [],
"time": 1552585444,
"timereceived": 1552585444,
"vjoinsplit": [],
"size": 254
}
],
"lastblock": "01b4ce6c4659138de1a7a67e8dac354b5acc3a998145effedbfec7ef41a2cec6"
},
"error": null,
"id": "curltest"
}listtransactions ( “account” count from includeWatchonly )
The listtransactions method returns up to count most recent transactions skipping the first from transactions for account.
| Name | Type | Description |
|---|---|---|
| “account” | (string, optional) | DEPRECATED the account name; should be "*" |
| count | (numeric, optional, default=10) | the number of transactions to return |
| from | (numeric, optional, default=0) | the number of transactions to skip |
| includeWatchonly | (bool, optional, default=false) | include transactions to watchonly addresses (see importaddress) |
| Name | Type | Description |
|---|---|---|
| “account” | (string) | DEPRECATED the account name associated with the transaction; it will be “” for the default account |
| “address” | (string) | the address of the transaction; not present for move transactions (category = move) |
| “category” | (string) | The transaction category. This property can be send |
| “amount” | (numeric) | The amount. This value is negative for the send category, and for the move category for moves outbound. It is positive for the receive category and for the move category for inbound funds. |
| “vout” | (numeric) | the vout value |
| “fee” | (numeric) | the amount of the fee; this is negative and only available for the send category of transactions |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations of the transaction; available for send and receive category of transactions (number of blocks on top of this transaction’s block) |
| “blockhash” | (string) | the block hash containing the transaction; available for the send and receive categories of transactions |
| “blockindex” | (numeric) | the block index containing the transaction; available for the send and receive categories of transactions |
| “txid” | (string) | the transaction id; available for the send and receive categories of transactions |
| “time” | (numeric) | the transaction time in seconds since epoch (midnight Jan 1 1970 GMT) |
| “timereceived” | (numeric) | the time received in seconds since epoch (midnight Jan 1 1970 GMT); available for the send and receive categories of transactions |
| “comment” | (string) | whether a comment is associated with the transaction |
| “otheraccount” | (string) | for the move category of transactions; indicates the account which sent the funds (for receiving funds, positive amounts), or went to (for sending funds, negative amounts) |
| “size” | (numeric) | transaction size in bytes |
./hush-cli listtransactions
Response
[
{
"account": "",
"address": "RTcwYaQPDVN7V9SdfFHARWnoB7vcpSfdvs",
"category": "generate",
"amount": 0.00010000,
"vout": 0,
"rawconfirmations": 99,
"confirmations": 99,
"generated": true,
"blockhash": "0eb4edeb5141a7670ef8be413873e1bef4f6f321867a2b8d67a616cdc7df1e77",
"blockindex": 0,
"blocktime": 1536976212,
"expiryheight": 0,
"txid": "3041aa7374e530d4d28e14620dd2bb9d2ff0bf71dd1106f08bc9f02fce44598e",
"walletconflicts": [
],
"time": 1536976211,
"timereceived": 1536976211,
"vjoinsplit": [
],
"size": 99
}
, ... (9 responses ommitted from documentation for brevity)
]
Command:
./hush3-cli listtransactions "*" 20 100
Response:
[
{
"account": "",
"address": "RTcwYaQPDVN7V9SdfFHARWnoB7vcpSfdvs",
"category": "generate",
"amount": 0.00010000,
"vout": 0,
"rawconfirmations": 99,
"confirmations": 99,
"generated": true,
"blockhash": "0eb4edeb5141a7670ef8be413873e1bef4f6f321867a2b8d67a616cdc7df1e77",
"blockindex": 0,
"blocktime": 1536976212,
"expiryheight": 0,
"txid": "3041aa7374e530d4d28e14620dd2bb9d2ff0bf71dd1106f08bc9f02fce44598e",
"walletconflicts": [
],
"time": 1536976211,
"timereceived": 1536976211,
"vjoinsplit": [
],
"size": 99
}
, ... (9 responses ommitted from documentation for brevity)
]
You can find your rpcuser, rpcpassword, and rpcport in the hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "listtransactions", "params": ["*", 20, 100] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
[
{
"account": "",
"address": "RTcwYaQPDVN7V9SdfFHARWnoB7vcpSfdvs",
"category": "generate",
"amount": 0.0001,
"vout": 0,
"rawconfirmations": 99,
"confirmations": 99,
"generated": true,
"blockhash": "0eb4edeb5141a7670ef8be413873e1bef4f6f321867a2b8d67a616cdc7df1e77",
"blockindex": 0,
"blocktime": 1536976212,
"expiryheight": 0,
"txid": "3041aa7374e530d4d28e14620dd2bb9d2ff0bf71dd1106f08bc9f02fce44598e",
"walletconflicts": [],
"time": 1536976211,
"timereceived": 1536976211,
"vjoinsplit": [],
"size": 99
}
, ... (9 responses ommitted from documentation for brevity)
],
"error": null,
"id": "curltest"
}listunspent ( minconf maxconf [“address”, … ] )
The listunspent method returns an array of unspent transaction outputs, with a range between minconf and maxconf (inclusive) confirmations. The method can, optionally, filter to only include txouts paid to specified addresses.
| Name | Type | Description |
|---|---|---|
| minconf | (numeric, optional, default=1) | the minimum confirmations to filter |
| maxconf | (numeric, optional, default=9999999) | the maximum confirmations to filter |
| “address” | (string) | a series of addresses |
| Name | Type | Description |
|---|---|---|
| “txid” | (string) | the transaction id |
| “vout” | (numeric) | the vout value |
| “generated” | (boolean) | true if txout is a coinbase transaction output |
| “address” | (string) | the address |
| “account” | (string) | DEPRECATED the associated account, or “” for the default account |
| “scriptPubKey” | (string) | the script key |
| “amount” | (numeric) | the transaction amount |
| “confirmations” | (numeric) | a confirmation number that is aware of the dPoW security service |
| “rawconfirmations” | (numeric) | the raw confirmations (number of blocks on top of this transaction’s block) |
./hush3-cli listunspent
Response
[
{
"txid": "269b658b9a52e9142c96f3a49c0ad917e5d0c08126baa96713827267137d150f",
"vout": 0,
"generated": true,
"address": "RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu",
"scriptPubKey": "21037e631c6a03d028e48aecfd93b2d2737d5d7e2852a426b940ff301f78aa31690cac",
"amount": 0.00010000,
"interest": 0.00000000,
"rawconfirmations": 6,
"confirmations": 1,
"spendable": true
},
...
]
Command:
./hush-cli listunspent 6 9999999 '["RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu","RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ"]'
Response:
[
{
"txid": "0ca752c996c4074ca62071cdbf848ccd33864894151f982024006b3d69d021ac",
"vout": 0,
"generated": true,
"address": "RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu",
"scriptPubKey": "21037e631c6a03d028e48aecfd93b2d2737d5d7e2852a426b940ff301f78aa31690cac",
"amount": 0.0001,
"interest": 0.0,
"rawconfirmations": 7,
"confirmations": 1,
"spendable": true
},
{
"txid": "7281407d85619901ee10d52c96869f7879393434b782331df6f67a0e0e9d1ffa",
"vout": 0,
"generated": false,
"address": "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ",
"scriptPubKey": "76a9141c973dbbed002e189caf31664d9ca7e8b1e92d8788ac",
"amount": 9.99304496,
"interest": 0.0,
"rawconfirmations": 21,
"confirmations": 21,
"spendable": true
}
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "listunspent", "params": [6, 9999999, ["RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu","RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ"]] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport
Response:
{
"result": [
{
"txid": "0ca752c996c4074ca62071cdbf848ccd33864894151f982024006b3d69d021ac",
"vout": 0,
"generated": true,
"address": "RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu",
"scriptPubKey": "21037e631c6a03d028e48aecfd93b2d2737d5d7e2852a426b940ff301f78aa31690cac",
"amount": 0.0001,
"interest": 0.0,
"rawconfirmations": 7,
"confirmations": 7,
"spendable": true
},
{
"txid": "7281407d85619901ee10d52c96869f7879393434b782331df6f67a0e0e9d1ffa",
"vout": 0,
"generated": false,
"address": "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ",
"scriptPubKey": "76a9141c973dbbed002e189caf31664d9ca7e8b1e92d8788ac",
"amount": 9.99304496,
"interest": 0.0,
"rawconfirmations": 21,
"confirmations": 21,
"spendable": true
}
],
"error": null,
"id": "curltest"
}lockunspent unlock [{ “txid”: “txid”, “vout”: n }, … ]
The lockunspent method locks (unlock = false) or unlocks (unlock = true) specified transaction outputs. A locked transaction output will not be chosen by automatic coin selection, when spending the relevant coin. The locks are stored in memory only; at runtime a node always starts with zero locked outputs, and the locked output list is always cleared when a node stops or fails.
::: tip
See the listunspent and listlockunspent calls to determine local transaction state and info.
:::
| Name | Type | Description |
|---|---|---|
| unlock | (boolean, required) | whether to unlock (true) or lock (false) the specified transactions |
| “txid” | (string) | the transaction id |
| “vout” | (numeric) | the output number |
| Name | Type | Description |
|---|---|---|
| true/false | (boolean) | whether the command was successful |
./hush-cli lockunspent false '[{"txid":"d7ba45296c66e16eb61f27a4eef8848c7f5579fe801f277c1b0e074a4f47d6fd","vout":0}]'
Response:
true
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "lockunspent", "params": [false, [{"txid":"d7ba45296c66e16eb61f27a4eef8848c7f5579fe801f277c1b0e074a4f47d6fd","vout":0}]] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": true,
"error": null,
"id": "curltest"
}move “fromaccount” “toaccount” amount ( minconf “comment” )
::: tip
DEPRECATED
:::
The move method moves a specified amount from one account in your wallet to another.
| Name | Type | Description |
|---|---|---|
| “fromaccount” | (string, required) | MUST be set to the empty string “” to represent the default account; passing any other string will result in an error |
| “toaccount” | (string, required) | MUST be set to the empty string “” to represent the default account; passing any other string will result in an error |
| amount | (numeric) | the quantity to move between accounts |
| minconf | (numeric, optional, default=1) | only use funds with at least this many confirmations |
| “comment” | (string, optional) | an optional comment, stored in the wallet only |
| Name | Type | Description |
|---|---|---|
| true/false | (boolean) | true if successful |
./hush-cli move "" "tabby" 0.01
Response:
(deprecated)
Command:
./hush-cli move "timotei" "akiko" 0.01 6 "happy birthday!"
Response:
(deprecated)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "move", "params": ["timotei", "akiko", 0.01, 6, "happy birthday!"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(deprecated)resendwallettransactions
The resendwallettransactions method immediately re-broadcasts unconfirmed wallet transactions to all peers. This method is intended only for testing; the wallet code periodically re-broadcasts automatically.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| “transaction_id” | (string) | an array of the rebroadcasted transaction id’s |
./hush-cli resendwallettransactions
Response:
[
"4e847051279ead30fb2d8d53cc0d4649f62c85a44b23f90152d2ef4ed6af2006"
]
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "resendwallettransactions", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": [
"4e847051279ead30fb2d8d53cc0d4649f62c85a44b23f90152d2ef4ed6af2006"
],
"error": null,
"id": "curltest"
}sendfrom “account” “address” amount ( minconf “comment” “comment-to” )
::: tip
DEPRECATED: Use sendtoaddress instead.
:::
The sendfrom method sends an amount from account to address.
| Name | Type | Description |
|---|---|---|
| “account” | (string, required) | MUST be set to the empty string “” to represent the default account; passing any other string will result in an error |
| “address” | (string, required) | the address to receive funds |
| amount | (numeric, required) | the amount (transaction fee not included) |
| minconf | (numeric, optional, default=1) | only use funds with at least this many confirmations |
| “comment” | (string, optional) | a comment used to store what the transaction is for; this is not part of the transaction, just kept in your wallet |
| “comment-to” | (string, optional) | an optional comment to store the name of the person or organization to which you’re sending the transaction; this is not part of the transaction, it is only kept in your wallet |
| Name | Type | Description |
|---|---|---|
| “transaction_id” | (string) | the transaction id |
./hush-cli sendfrom "" "RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu" 0.01
Response:
(deprecated)
Command:
./hush3-cli sendfrom "tabby" "RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu" 0.01 6 "donation" "seans outpost"
Response:
(deprecated)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "sendfrom", "params": ["tabby", "RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu", 0.01, 6, "donation", "seans outpost"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(deprecated)sendmany “account” { “address”: amount, … } ( minconf “comment” [ “address”, … ] )
The sendmany method can send multiple transactions at once. Amounts are double-precision floating point numbers.
| Name | Type | Description |
|---|---|---|
| “account” | (string, required) | MUST be set to the empty string “” to represent the default account; passing any other string will result in an error |
| “amounts” { “address”:amount, … } | (“string”:numeric) | the address (string) and the value (double-precision floating numeric) |
| minconf | (numeric, optional, default=1) | only use the balance confirmed at least this many times |
| “comment” | (string, optional) | a comment |
| subtractfeefromamount | (string, optional) | a json array with addresses. The fee will be equally deducted from the amount of each selected address; the recipients will receive less than you enter in their corresponding amount field. If no addresses are specified here, the sender pays the fee. |
| “address” | (string) | subtract fee from this address |
| Name | Type | Description |
|---|---|---|
| “transaction_id” | (string) | the transaction id for the send; only 1 transaction is created regardless of the number of addresses |
./hush-cli sendmany "" '{"RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ":0.01,"RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu":0.02}'
Reponse:
e39b046f0e30bd2a80c64ec78d902107858c8f0d55097d7f2293df1c9a4496ae
Command:
./hush-cli sendmany "" '{"RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ":0.01,"RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu":0.02}' 6 "testing"
Response:
3829164d8a68d9b7c2c89efe419eca77e37883318b7187b7e000e80e8138a370
Command:
./hush-cli sendmany "" '{"RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ":0.01,"RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu":0.02}' 1 "" '["RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ","RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu"]'
Response:
1813a39247913abf73af10ed51537234fe4e58eb5cfc4f49ac4fbcdecb42b4b4
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "sendmany", "params": ["", {"RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ":0.01,"RPS3xTZCzr6aQfoMw5Bu1rpQBF6iVCWsyu":0.02}, 6, "testing"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "fe7db27ed66b9d999c21d3cc9c8c687bd68721d711da6573a0a0ccf75c1cace5",
"error": null,
"id "curltest"
}sendtoaddress “address” amount ( “comment” “comment-to” subtractfeefromamount )
The sendtoaddress method sends an amount to a given address. The amount is real and is rounded to the nearest 0.00000001.
| Name | Type | Description |
|---|---|---|
| “komodoaddress” | (string, required) | the receiving address |
| “amount” | (numeric, required) | the amount to send (json requires all decimals values less than 1 begin with the characters ‘0.’) |
| “comment” | (string, optional) | a comment used to store what the transaction is for; this is not part of the transaction, just kept in your wallet |
| “comment-to” | (string, optional) | a comment to store the name of the person or organization to which you’re sending the transaction; this is stored in your local wallet file only |
| subtractfeefromamount | (boolean, optional, default=false) | when true, the fee will be deducted from the amount being sent |
| Name | Type | Description |
|---|---|---|
| “transaction_id” | (string) | the transaction id |
./hush-cli sendtoaddress "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ" 0.1
Response:
cc23924c007adc98b8ea5b9b8b47638e080aa469eb9738b976def487a44f467b
Command:
./hush-cli sendtoaddress "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ" 0.1 "donation" "seans outpost"
Response:
86948c27dc63be415b235c5b3ed807c1e07d9a2cac252f58734add700c55fe18
Command:
./hush-cli sendtoaddress "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ" 0.1 "" "" true
Response:
c5727cafd7d6dfc888d4a0596dc58bfafb24859e29f827e1bf1443037d8461fc
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "sendtoaddress", "params": ["RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ", 0.1, "donation", "seans outpost"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": "6e411f3534af8847d705d87934f6061046e2034abad96b7a1fb1d3996129cb1e",
"error": null,
"id": "curltest"
}setaccount “address” “account”
::: tip Notice
DEPRECATED
:::
The setaccount method sets the account associated with the given address.
| Name | Type | Description |
|---|---|---|
| “address” | (string, required) | the address to be associated with an account |
| “account” | (string, required) | MUST be set to the empty string “” to represent the default account; passing any other string will result in an error |
./hush-cli setaccount "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ" "tabby"
Response:
(deprecated)
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "setaccount", "params": ["RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ", "tabby"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
(deprecated)setpubkey pubkey
The setpubkey method sets the indicated pubkey. This method can be used in place of the pubkey launch parameter, when necessary.
Visit the section pubkey to understand when it is essential to set a pubkey and the consequences of setting it.
::: warning
This method works only once per daemon start. It can’t be used to change the pubkey that has already been set.
:::
| Name | Type | Description |
|---|---|---|
| pubkey | (string) | the desired pubkey |
| Name | Type | Description |
|---|---|---|
| pubkey | (string) | the pubkey |
| ismine | (boolean) | indicates whether the address belongs to the user |
| R-address | (string) | the public address associated with the pubkey |
./hush3-cli setpubkey 0260801166cebdc9be1e3460ba9e4959fb29feee7725f565ffc296fa4636aa706f
Response:
{
"address": "RK47DQhSHJEMGFSiRtgki67xG3u1Qsq1Gw",
"ismine": true,
"pubkey": "0260801166cebdc9be1e3460ba9e4959fb29feee7725f565ffc296fa4636aa706f"
}
You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user myrpuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "setpubkey", "params": ["02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
"result": {
"address": "RK47DQhSHJEMGFSiRtgki67xG3u1Qsq1Gw",
"ismine": true,
"pubkey": "0260801166cebdc9be1e3460ba9e4959fb29feee7725f565ffc296fa4636aa706f"
},
"error": null,
"id": "curltest"
}settxfee amount
The settxfee method sets the transaction fee per kB.
| Name | Type | Description |
|---|---|---|
| amount | (numeric, required) | the transaction fee in COIN/kB rounded to the nearest 0.00000001 |
| Name | Type | Description |
|---|---|---|
| true/false | (boolean) | returns true if successful |
./hush-cli settxfee 0.00001
Response
true
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "settxfee", "params": [0.00001] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport
Response
{
"result": true,
"error": null,
"id": "curltest"
}signmessage “address” “message”
The signmessage method signs a message via the private key of an address.
| Name | Type | Description |
|---|---|---|
| “address” | (string, required) | the address to use for the private key |
| “message” | (string, required) | the message |
| Name | Type | Description |
|---|---|---|
| “signature” | (string) | the signature of the message encoded in base 64 |
Create the signature:
Command:./hush-cli signmessage "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ" "my message"
Response:
H1y0mn/wRv56r1bcfkbQtzjG6XeWSelAsyayBuCwEL9XGXs7ieU55dryt/cFWM9gnRFI7gS01AByuSqRs+o/AZs=
Verify the signature:
Command:./hush-cli verifymessage "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ" "H1y0mn/wRv56r1bcfkbQtzjG6XeWSelAsyayBuCwEL9XGXs7ieU55dryt/cFWM9gnRFI7gS01AByuSqRs+o/AZs=" "my message"
Response:
true
You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.
curl --user $rpcuser:$rpcpassword --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "signmessage", "params": ["RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ", "my message"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response
{
"result": "H1y0mn/wRv56r1bcfkbQtzjG6XeWSelAsyayBuCwEL9XGXs7ieU55dryt/cFWM9gnRFI7gS01AByuSqRs+o/AZs=",
"error": null,
"id": "curltest"
}walletlock
::: tip
The walletlock method is neither active nor visible in the help method until the encryptwallet passphrase is set.
:::
:::tip
This feature is available only on chains where -ac_public is enabled. Chains that feature private transactions cannot use this feature.
:::
The walletlock method re-locks a wallet that has a passphrase enabled via encryptwallet.
| Name | Type | Description |
|---|---|---|
| (none) |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli walletlock
Response:
(none)walletpassphrase “passphrase” (timeout)
::: tip
The walletpassphrase method is neither active nor visible in the help method until the encryptwallet passphrase is set.
:::
:::tip
This feature is available only on chains where -ac_public is enabled. Chains that feature private transactions cannot use this feature.
:::
The walletpassphrase method unlocks the wallet using the passphrase that was set by the encryptwallet method.
The timeout argument can be included to limit the length of time (in seconds) the wallet will remain unlocked.
| Name | Type | Description |
|---|---|---|
| “passphrase” | (string) | the passphrase that was set by the encryptwallet method |
| timeout | (number in seconds, optional) | the amount of time for which the wallet should remember the passphrase |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli walletpassphrase
Response
(none)walletpassphrasechange “oldpassphrase” “newpassphrase”
::: tip
The walletpassphrasechange method is neither active nor visible in the help method until the encryptwallet passphrase is set.
:::
:::tip
This feature is available only on chains where -ac_public is enabled. Chains that feature private transactions cannot use this feature.
:::
The walletpassphrasechange method changes "oldpassphrase" to "newpassphrase".
| Name | Type | Description |
|---|---|---|
| “oldpassphrase” | (string) | the old passphrase |
| “newpassphrase” | (string) | the new passphrase |
| Name | Type | Description |
|---|---|---|
| (none) |
./hush-cli walletpassphrasechange "oldpassphrase" "newpassphrase"
Response:
(none)zcbenchmark benchmarktype samplecount
The zcbenchmark method runs a benchmark of the selected benchmarktype. This benchmark is calculated samplecount times.
When finished, the method returns the running times of each sample.
| Name | Type | Description |
|---|---|---|
| “benchmarktype” | (string, required) | the type of the benchmark |
| “samplecount” | (numeric) | the number of samples to take |
| Name | Type | Description |
|---|---|---|
| “runningtime” | (numeric) | the time it took to run the selected benchmarktype |
Output:
[
{
"runningtime": runningtime
},
{
"runningtime": runningtime
}
...
]zcrawjoinsplit rawtx inputs outputs vpub_old vpub_new
::: warning
DEPRECATED.
:::
Splices a joinsplit into a raw transaction. Inputs are unilaterally confidential.
Outputs are confidential between sender/receiver. The vpub_old and
vpub_new values are globally public and move transparent value into
or out of the confidential value store, respectively.
Note: The caller is responsible for delivering the output enc1 and
enc2 to the appropriate recipients, as well as signing rawtxout and
ensuring it is mined. (A future RPC call will deliver the confidential
payments in-band on the blockchain.)
Output:
{
"encryptednote1": enc1,
"encryptednote2": enc2,
"rawtxn": rawtxout
}zcrawkeygen
::: warning
DEPRECATED.
:::
the zcrawkeygen method generates a zcaddr which can send and receive confidential values.
Output:
{
"zcaddress": zcaddr,
"zcsecretkey": zcsecretkey,
"zcviewingkey": zcviewingkey
}zcrawreceive zcsecretkey encryptednote
::: warning
DEPRECATED.
:::
Decrypts encryptednote and checks if the coin commitments
are in the blockchain as indicated by the “exists” result.
Output:
{
"amount": value,
"note": noteplaintext,
"exists": exists
}Perform a joinsplit and return the JSDescription.
::: tip
When you are building and testing a Hush Smart Chain, please do not hesitate to reach out to us when you are stuck. We wish to make this as easy as possible. Our support agents are available in our Discord for many hours each day.
:::
Basic knowledge about how to connect two nodes is recommended for the initial setup.
As per the original blockchain designs of Satoshi Nakamoto, a Komodo Smart Chain does not exist on a single node. Rather, it exists via a connection between two or more nodes. This is the nature of decentralization: it is on the network we rely, rather than a single authority. Therefore, the design of the technology encourages the developer to have two separate nodes which are able to connect over a network.
In the most ideal circumstance, the new Komodo developer will already have two virtual private servers (VPS’s) available for testing. VPS’s can be cheap and easy to manage. A typical VPS will either have a static external IP or can be assigned one.
If the new developer does not have two VPS’s available, setting up a test Smart Chain on two local machines in a home or office-type setting is still achievable, but it may require more troubleshooting.
When using a home or office-type setup, the challenge lies in the way the network is created, and there are myriad network setups.
For example, if the developers are operating on a local router, where the two machines are connected via wifi, the local ip addresses of the machines are harder to find. This is because the router assigns new local ip addresses to the machines each time they re-connect to the router. It is not possible to see the ip addresses from the Internet. In this situation, the developer must log into the router’s software interface and search for the currently assigned local ip addresses.
A home or office-type setup can suffice, if you’re just looking to test an Smart Chain quickly and don’t want to spend money on a VPS. However, don’t be surprised if you need to ask for help. Please reach out to us, and we’ll help the best we can.
To test the creation of a Smart Chain using only a single node, see these linked instructions.
To prepare for the next step, execute the following command in the terminal on both machines:
curl ifconfig.me
From the response, record the ip address value for additional use.
With the ip addresses available, we are now prepared to test the connection between the machines.
ping <insert the ip address of the other machine here>
This command will generate a response every second, indicating the ping speed with which your machines are able to connect.
$ ping 192.168.1.101
PING 192.168.1.101 (192.168.1.101) 56(84) bytes of data
64 bytes from 192.168.1.101: icmp_seq=1 ttl=64 time=131 ms
64 bytes from 192.168.1.101: icmp_seq=2 ttl=64 time=2.40 ms
If you do not see a similar response in the shell, your machines are not able to connect. Please reach out to our team and we will do our best to assist you.
With your machines successfully able to ping each other, you are ready to create your first Smart Chain.
The following instructions use the simplest possible set of parameters in creating a new Smart Chain: a coin with the ticker symbol HUSH3, 123456789 pre-mined coins, and a block reward of .0001.
On your first node, change into the directory where Komodo’s hushd and hush-cli are installed and execute the following commands in the terminal:
./hushd -ac_name=HUSH3 -ac_supply=123456789 -addnode=<IP address of the second node> &
./hushd.exe -ac_name=HUSH3 -ac_supply=123456789 -addnode=<IP address of the second node> &
After issuing this command in the terminal on both machines, you will find the p2p port in the terminal window.
>>>>>>>>>> HUSH3: p2p.8096 rpc.8097 magic.c89a5b16 3365559062 123456789 coins
In the above string, take note of the p2p and RPC ports, as well as the magic number. These values must match on both nodes for the chains to be identical. If they are not the same, verify that the launch command is the same on both the nodes.
In the example above, the p2p port is 8096. Make sure that the p2p port is open to the internet or any other network from which the second node connects.
This completes the first half of the Smart Chain creation process. Scroll down to Part II.
::: tip
Please refer to Antara Customization parameters for a full list of parameters to customize the characteristics of your blockchain.
:::
::: tip
Please note the requirements for ac_supply, and instructions for using addnode under various network conditions, including firewalls and LANs.
:::
On the second node you issue the same command, but with a key difference. This time, use the first node’s IP address.
./hushd -ac_name=HUSH3 -ac_supply=123456789 -addnode=IP address of the first node
Once the daemon loads, compare the string that starts with >>>>>>>>>> in the second node to the one from the first node to make sure they are identical.
Mining can be started on a node using the following command:
./hush-cli -ac_name=HUSH3 setgenerate true $(nproc)
$(nproc) in the above command makes the daemon mine using all the available CPU threads, which might be necessary in a low end VPS.
On a Komodo-based blockchain, all of the pre-mined coins are mined in the first block. Therefore, whichever machine executes the mining command will receive the entirety of the blockchain’s pre-mined coin supply, as set in the ac_supply parameter. Upon mining the first block, these coins are available in the default wallet.dat file.
To collect all the mining rewards from the node to a single address, execute the following commands before issuing the setgenerate command:
# Get a new address
newaddress=$(./hush-cli -ac_name=HUSH3 getnewaddress)
# Get the corresponding pubkey
pubkey=$(./hush-cli -ac_name=HUSH3 validateaddress $newaddress | jq -r '.pubkey' )
# Indicate the pubkey to the daemon
./hush-cli -ac_name=HUSH3 setpubkey $pubkey
After issuing the mining command is issued, can check that the two nodes are connected by using the following command:
./hush-cli -ac_name=HUSH3 getinfo | grep connections
If the nodes are properly connected, both nodes will respond with: "connections": 1
These are the coins you will later distribute to your community, using either our native DEX, AtomicDEX, or our decentralized-ICO software (coming soon), or on any other third-party exchange.
You can check the contents of the wallet by executing the following command in the terminal:
./hush-cli -ac_name=HUSH3 getwalletinfo
To verify that everything is properly initiated, send a few coins from the second node to the first node:
<collapse-text hidden title=“Commands”>
newaddress=$(./hush-cli -ac_name=HUSH3 getnewaddress)
echo $newaddress
# Copy the returned address for use on the other node
# Send ten coins to the address generated on the first node
./hush-cli -ac_name=HUSH3 sendtoaddress Address_from_the_first_node 10
./hush-cli -ac_name=HUSH3 getreceivedbyaddress <insert address_from_the_first_node> 0
# The 0 argument in the above command instructs the daemon to include the unconfirmed coin balance in the response
More info can be found in the debug.log of the chain found at:
~/.komodo/HUSH3/debug.log%appdata%\komodo\HUSH3\debug.log~/.komodo/HUSH3/debug.logUsing the hush-cli software, which is included in any default installation of hushd, you can now execute many commands on your new Smart Chain. This enables you to perform transactions, create and execute smart contracts, store data in KV storage, etc.
Since the Komodo software began as a fork of Zcash and BTC, essentially all commands that are available on these two upstream blockchains are also available on your new Smart Chain.
Furthermore, a key purpose of the Komodo blockchain is to create features and functions that facilitate and enhance your development experience. Information regarding these enhancements is available throughout this documentation.
In addition, since you are building on a Komodo-based blockchain, you have easy access to our multi-coin wallet and atomic-swap powered decentralized exchange, AtomicDEX, the Antara development framework and modules, our decentralized-ICO software, and our future upgrades.
To see general information about your new Smart Chain, execute this command:
./hush-cli -ac_name=HUSH3 getinfo
The following command returns information about all available RPC and API commands:
./hush-cli -ac_name=HUSH3 help
Your new Smart Chain can receive the same security of the Bitcoin hash rate through our security mechanism, called “delayed Proof of Work” (dPoW).
There are two aspects to the cost for dPoW services. The first comes from the cost of making records in your Smart Chain’s database, and in the records of the KMD main chain. These records are called “notarizations.”
Notarizations are performed as transactions on your blockchain and on the main KMD blockchain. The transactions have messages included inside that indicate the most recent and secure state of your Smart Chain. Your Komodo Smart Chain will know how to recognize and rely on notarizations automatically.
Every ten to twenty minutes, our notary nodes will hash the history of your Smart Chain and insert it as a record into the KMD main chain. This provides an initial layer of security, but it is not the final layer.
In another ten to twenty minutes, all of the information in the KMD chain (including your Smart Chain’s hashed data) is hashed and inserted into the BTC blockchain. Once your information is pushed into BTC, your Smart Chain will consider all notarized information effectively settled and immutable; only the recent, un-notarized transactions are still relying on your Smart Chain’s raw consensus mechanism. Click here to learn more about the types of consensus mechanisms you can choose on a KMD Smart Chain.
Thus, your Smart Chain will have all the power of Bitcoin securing your blockchain’s history, with the zero-knowledge privacy of the Zcash parameters pre-installed, and all of the interoperability, scalability, and more that Komodo adds to your development experience.
As the notarizations are transactions, they naturally have a cost, and this cost is covered by you, the Smart Chain developer. Over the course of a year, assuming consistent activity, the cost for performing these transactions is 365 KMD, and also 365 of your Smart Chain’s coins.
There are extra costs involved that are aimed to compensate the Notary Nodes for the setup and maintainance of the dPOW service. You may reach out to our third-party service providers to receive a quote. They can provide various services related to Smart Chain creation, electrum-server (SPV) setup and maintenance, explorer setup, and other blockchain services.
Click Here for the List of Third-Party Service Providers
Several teams have already signed up for our services and are developing on our platform. From our experience with them we can confidently say that our pricing is competitive compared to other blockchain services. Furthermore, when considering that a Komodo-based Smart Chain does not require KMD for gas and transaction fees, the cost to your end-users can be exponentially cheaper. All things considered, creating a fully independent blockchain on Komodo can cost but a small fraction of what it would cost to deploy a single smart contract on the platforms of some of our competitors.
Blockchain technology relies on a network of users using the blockchain and sharing data to function.
Smart Chains that are built for low-activity networks require extra steps from the developer to ensure proper syncing between nodes.
If you are building a Smart Chain and would like more information on maintaining constant syncing across nodes, our third-party service providers can provide dedicated support for this topic. Please also reach out to our support team and community on Discord