Get started

What’s is hushd and hush-cli ?


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.

How does it set up?


Install

git clone https://github.com/MyHush/hush3.git
cd hush3
# Build
./zcutil/build.sh -j8

Run

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

hush-cli

Address

The following RPC calls interact with the hushd software, and are made available through the hush-cli software.

getaddressbalance


getaddressbalance ‘{ “addresses” : [ “address” , … ] }’

The getaddressbalance method returns the confirmed balance for an address, or addresses. It requires addressindex to be enabled.

Arguments

Name Type Description
“address” (string) the address

Response

Name Type Description
“balance” (number) the current confirmed balance in satoshis
“received” (number) the total confirmed number of satoshis received (including change)

Examples

Command:
./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


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.

Arguments

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)

Response

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

Examples

Command:
./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.

Command:
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


getaddressmempool ‘{ “addresses” : [ “address” , … ] }’

The getaddressmempool method returns all mempool deltas for an address, or addresses. The method requires addressindex to be enabled.

Arguments

Name Type Description
“address” (string) the address

Response

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)

Examples

Command:
./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


getaddresstxids ‘{ “addresses” : [ “address” , … ] }’

The getaddresstxids method returns the txids for an address, or addresses. It requires addressindex to be enabled.

Arguments

Name Type Description
“address” (string) the address
“start” (number) the start block height
“end” (number) the end block height

Response

Name Type Description
“transaction_id” (string) the transaction id

Examples

Command:
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


getaddressutxos ‘{ “addresses” : [ “address” , … ], “chaininfo” }’

The getaddressutxos method returns all unspent outputs for an address. It requires addressindex to be enabled.

Arguments

Name Type Description
“address” (string) the address
“chainInfo” (boolean) include chain info with results

Response

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

Examples

Command:
./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


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.

Arguments

Name Type Description
“top” (number, optional) Only return this many addresses, i.e. top N rich list

Response

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

Examples

Command:
./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"
}

Blockchain

The following RPC calls interact with the hushd software, and are made available through the hush-cli software.

coinsupply


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.
:::

Arguments

Name Type Description
“height” (integer, optional) the desired block height

Response

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

Examples

Command:
./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.

Command:
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


getbestblockhash

The getbestblockhash method returns the hash of the best (tip) block in the longest block chain.

Arguments

Name Type Description
(none)

Response

Name Type Description
“hex” (string) the block hash, hex encoded

Examples

Command:
./hush-cli getbestblockhash
Response:
0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084

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": "getbestblockhash", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
	"result": "0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084",
	"error": null,
	"id": "curltest"
}

getblock


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.

Arguments

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

Response (verbose = true)

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

Response

Name Type Description
“data” (string) a string that is serialized, hex-encoded data for the indicated block

Examples

Command:
./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.

Command:
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.

Command:
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.

Command:
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.

Command:
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


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.

Arguments

Name Type Description
(none)

Response

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

Examples

Command:
./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.

Command:
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


getblockcount

The getblockcount method returns the number of blocks in the best valid block chain.

Arguments

Name Type Description
(none)

Response

Name Type Description
data (numeric) the current block count

Examples

Command:
./hush-cli getblockcount
Response:
398

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": "getblockcount", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
	"result": 398,
	"error": null,
	"id": "curltest"
}

getblockhash


getblockhash index

The getblockhash method returns the hash of the indicated block index, according to the best blockchain at the time provided.

Arguments

Name Type Description
index (numeric, required) the block index

Response

Name Type Description
“hash” (string) the block hash

Examples

Command:
./hush-cli getblockhash 100
Response:
08674c7a6ab6c40000d45e2094f2cafc6575bfcfdd1ce90fa0060fa573803024

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": "getblockhash", "params": [1000] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
	"result": "08674c7a6ab6c40000d45e2094f2cafc6575bfcfdd1ce90fa0060fa573803024",
	"error": null,
	"id": "curltest"
}

getblockhashes


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.

Arguments

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

Response

Name Type Description
“hash” (string) the block hash
“blockhash” (string) the block hash
“logicalts” (numeric) the logical timestamp

Examples

Command:
./hush-cli getblockhashes 1531614698 1531614498
Response:
[
	"01c555caa581783c94af1ec4fdd1237a37829fc8ccf9fd956f3df462495a8629",
	"0debf03ff8fe2c09ccb7e8b3770121d71ef8c7fce267a04f9301cc50f594f9ac",
	"01c92378d9fa66eb83d0bfcf601678792e0351f9b51483db1084347dabd78432"
]

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": "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


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.

Arguments

Name Type Description
“hash” (string, required) the block hash
verbose (boolean, optional, default=true) true returns a json object, false returns hex-encoded data

Response (verbose = 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

Response (verbose = false)

Name Type Description
“data” (string) a string that is serialized hex-encoded data for the indicated block

Examples

Command:
./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.

Command:
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


getchaintips

The getchaintips method returns information about all known tips in the block tree, including the main chain and any orphaned branches.

Arguments

Name Type Description
(none)

Response

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

Possible values for the returned status property

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

Examples

Command:
./hush-cli getchaintips
Response:
[
	{
		"height": 398,
		"hash": "0dd66ee1f151c38f73843378c08715ee3f4d3cf2888783e2846b81c057987084",
		"branchlen": 0,
		"status": "active"
	}
]

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": "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


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.

Arguments

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

Response

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.

Examples

Command:
./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.

Command:
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


getdifficulty

The getdifficulty method returns the proof-of-work difficulty as a multiple of the minimum difficulty.

Arguments

Name Type Description
(none)

Response

Name Type Description
number (numeric) the proof-of-work difficulty as a multiple of the minimum difficulty

Examples

Command:
./hush-cli getdifficulty
Response:
1.000023305960651

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": "getdifficulty", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
	"result": 1.000023305960651,
	"error": null,
	"id": "curltest"
}

getlastsegidstakes


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
:::

Arguments

Name Type Description
depth (numeric, required) the number of blocks to scan, starting from the current height and working backwards

Response

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

Examples

Command:
./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.

Command:
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


getmempoolinfo

The getmempoolinfo method returns details on the active state of the transaction memory pool.

Arguments

Name Type Description
(none)

Response

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

Examples

Command:
./hush-cli getmempoolinfo
Response:
{
	"size": 1,
	"bytes": 226,
	"usage": 896
}

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": "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


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.

Arguments

Name Type Description
verbose (boolean, optional, default=false) true for a json object, false for a json array of transaction ids

Response (verbose = false)

Name Type Description
“transaction_id” (string) the transaction id

Response (verbose = 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

Examples

Command:
./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.

Command:
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


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.

Arguments

Name Type Description
“txid” (string) the hex string of the transaction id
“index” (number) the output’s index

Response

Name Type Description
“txid” (string) the transaction id
“index” (number) the spending input index

Examples

Command:
./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.

Command:
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


gettxout “txid_string” vout_number ( includemempool_bool )

The gettxout method returns details about an unspent transaction output.

Arguments

Name Type Description
“txid” (string, required) the transaction id
vout (numeric, required) the vout value
includemempool (boolean, optional) whether to include the mempool

Response

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

Examples

Command:
./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.

Command:
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


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.
:::

Arguments

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

Response

Name Type Description
“data” (string) a string that is a serialized, hex-encoded data for the proof

Examples

Command:
./hush-cli gettxoutproof '["c71f4a2ebf87bdd588e3aa168917933ee4be1661245ebf52d5708a8339cf9d7a"]' "0a28e2fb630b282138bf23bb79f597b11acff6f57c8d9c1c10fa54770035c813"
Response:
040000004cd8bd98c66020496d0b34a5f5412400146ba10d6c7ab4286f84f7008d8d390e9ca9575183f60906e293e9766997396bec59f1c0b966085de3d17f8ac3c9d5280000000000000000000000000000000000000000000000000000000000000000da05975bf50e0f202d004b81fcc388cfd411d8c7c59a548e070b5affe938ce8ce830f10b298b00002402939a9a31df1305b40d26d9748283b102c708258717248d0d63f01d2957d8e3dcf56f6e03000000022e4babc29707fbdd8da2e4277b7c8b8b09e837f409eb047c936904d75fc8e6267a9dcf39838a70d552bf5e246116bee43e93178916aae388d5bd87bf2e4a1fc7010d

gettxoutsetinfo


gettxoutsetinfo

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.
:::

Arguments

Name Type Description
(none)

Response

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

Examples

Command:
./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.

Command:
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


kvsearch “key_string”

The kvsearch method searches for a key stored via the kvupdate command.

::: tip
This feature is only available for Smart Chains.
:::

Arguments

Name Type Description
key (string, required) the key for which the user desires to search the chain

Response

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

Examples

Command:
./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.

Command:
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


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.
:::

Arguments

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

Response

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

Examples

Command:
./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.

Command:
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


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.

Arguments

Name Type Description
heights (number) the block height for the query

Response

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)

Examples

Command:
./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.

Command:
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


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.

Arguments

Name Type Description
height (number) the block height desired for the query
timestamp (number) the timestamp of the block desired for the query

Response

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

Examples

Command:
./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.

Command:
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


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.
:::

Arguments

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

Response

Name Type Description
true/false (boolean) whether the verification was successful

Examples

Command:
./hush3-cli verifychain
Response:
true

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": "verifychain", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
	"result": true,
	"error": null,
	"id": "curltest"
}

verifytxoutproof


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.

Arguments

Name Type Description
“proof_string” (string, required) the hex-encoded proof generated by gettxoutproof

Response

Name Type Description
“txid” (string) the transaction ids to which the proof commits; the array is empty if the proof is invalid

Examples

Command:
./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"
}

Control

The following RPC calls interact with the hushd software, and are made available through the hush-cli software.

getinfo


getinfo

The getinfo method returns an object containing various state info.

Arguments

Name Type Description
(none)

Response

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

Examples

Command:
./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.

Command:
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


help ( “command” )

The help method lists all commands, or all information for a specified command.

Arguments

Name Type Description
“command” (string, optional) the command requiring assistance

Response

Name Type Description
“command” (string, optional) the command requiring assistance

Examples

Command:
./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


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.
:::

Arguments

Name Type Description
(none)

Response

Name Type Description
Hush server stopping
[COIN] Hush server stopping

Examples

Command:
./hush-cli stop
Response
"Hush server stopping"

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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" }

Generating / Mining


The following RPC calls interact with the hushd software, and are made available through the hush-cli software.

generate


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.

Arguments

Name Type Description
numblocks (numeric) the desired number of blocks to generate

Response

Name Type Description
blockhashes (array) hashes of blocks generated

Examples

Command:
./hush-cli generate 2
Response
[
	"0475316d63fe48bb9d58373595cb334fc2553f65496edfb2fb17b9ed06f4c480",
	"00d29a2b7dec52baa9ab8e4264363f32b4989eef7dbb0a9932fbc11274195b5a"
]

getgenerate


getgenerate

The getgenerate method returns a boolean value indicating the server’s mining status.

The default value is false.

::: tip
See also gen.
:::

Arguments

Name Type Description
(none) (none)

Response

Name Type Description
true/false (boolean) indicates whether the server is set to generate coins

Examples

Command:
./hush-cli getgenerate
Response:
false

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.
:::

Arguments

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

Response

Name Type Description
(none) (none)

Examples

Activate mining with maximum available processors
Command:
./hush-cli setgenerate true -1
Response:
(none)
Activate staking
Command:
./hush-cli setgenerate true 0
Response:
(none)
Activate mining with 4 threads
Command:
./hush-cli setgenerate true 4
Response:
(none)
Check the setting
Command:
./hush-cli getgenerate
Response:
true
Turn off generation
Command:
./hush-cli setgenerate false
Response:
(none)
Turning the setting on via json RPC
Command:
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


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.

Arguments

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

Response

Name Type Description
“miner” (numeric) the mining reward amount

Examples

Command:
./hush-cli getblocksubsidy 100
Response:
{
	"miner": 3.0
}

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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’.

A Note on Unique Mining Circumstances

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

Usage:
./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.

Arguments

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”

Response

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

Examples

Command:
./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.

Command:
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


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).
:::

Arguments

Name Type Description
(none)

Response

Name Type Description
“data” (numeric) the solutions-per-second average

Examples

Command:
./hush-cli getlocalsolps
Response:
0.4141607577247555

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


getmininginfo

The getmininginfo method returns a json object containing mining-related information.

Arguments

Name Type Description
(none) (none)

Response

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)

Examples

Command:
./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.

Command:
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


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.

Arguments

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

Response

Name Type Description
data (numeric) the solutions-per-second estimate

Examples

Command:
./hush-cli getnetworkhashps
Response:
10724120

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.

Arguments

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

Response

Name Type Description
data (numeric) solutions per second, estimated

Examples

Command:
./hush-cli getnetworksolps
Response:
17547717

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.
:::

Arguments

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.

Response

Name Type Description
true (boolean) returns true

Examples

Command:
./hush-cli prioritisetransaction "7dc902b280da27cf2dabe41ed6f4d04c828714f289435db193a49341005607eb" 0.0 10000
Response:
true

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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 .
:::

Arguments

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

Response

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

Examples

Command:
./hush-cli submitblock "0400000029865a4962f43d6f95fdf9ccc89f82377a23d1fdc41eaf943c7881a5ca55c5018973d81f5ce7ab99f027b15c86ca88ec5e4b6f35ad4018bfc2058568bbe7f526000000000000000000000000000000000000000000000000000000000000000097954a5b9e830c1d1600ac305580abea34bda62eb503b02fc4b7872428cfa60bf5824a9b78fc0000fd400500c80d4a8c84cec781a5740d8d3fb18587a850b6380f073cd861c4ce7c4290460c533e0d4dd3b89fe0f0052ccdf9d450a1dfcd7263a39422000378da3eeb621078af689447a5ed0a7265a857463a36d72cdd35910d14de9816a25d631aeb0249ede829aca77f9cce1a2e4a84b75e4bd515845043d52f718638fb41e92d8b18bfe1f49e1c0d23223a285b2850e8469dfbb9782b20c8bebf2a61d7b7d8eea310c7c8d5bfa612bf94fd05562ec8876eacafa0c334a651ef70c941459161b60c20511087d63223878052d4fd1a92298789d7c57609fe3a247489674592e8e34a1728b28e2c2b3165f01d5fefa22e6384f7fe4e566de1741e264f057a0feb1b35d51694647ba52afd71c3bd375b924da95e2b413dbea256a2de9ccddcab88bd2e69cc3acc8a778b4d1db78b41df9fea6d69b071f570f628ad47537d081740a4f2c4fa6666dbb862a6d02ff07b5ae0a9fa24b003fa0355dbde0425d6c14452f0d357f2cfd97960c343ba73789a2d7ba580ea8834ef656a9e79c49fc0f61aa9452a644c8bc06afe31dce2a7ca5d6995adc8ce1f77165a075399e1d006e2bb57c09ffd6e21fcff440645faef599264a3b8c005cf60683371ba1af8847d1992c64e512f13d9d2d364969759233a27c65e1f2f1113cdb665e3e8f7baa2c398c4a2ee85a6ad1bdb095962fafaa01c3d85bc820653544b89b6e75a584d8d04bc77e5284a9ebbcd46c1a6732b841e46c876976805d932a90ac215bcc37801900d49cfb87fe5c809b30ebd8ece38669153c1f1a2438253a56a6507d556cc16b2990f0bd290fea59462d25eebdbfcb78eb403c8080e0c68e8e2ef8f67145121bce83b94dc8f9d0a742752323c5a4b42409ffcc37053c58596deff7981a20e3f412c07c839a341fdc177d5e28f7909696f90c90efff14048f440e7ea3181378f66d35b0697dc02c60154778f438cdd3dba5dc4c2763319498bbb3b8fae17508b073d07d83f5f1dc71bf2dc205f06245872620dfa341dbcdf9c574598c121120e91dd687dfd08451369ab29a11dc73f69d0722992a1c70cf1498ec9b9143fcb0abfd7b1e39189125e8567cb2cc3d71fcdb541a0776a5a665161f98385633153fc9702f079269a1dac0d2c708f5d94e346159858cfd50624ff5a0505358739b5f41adbe739bf75852eebb06eeccd79e030019a5227cd9a19e77b6821ba0794fe09cb074f40ce0b92c081c31cda2d4711d53889fc6f0579839fa74309768ef0a796fa1fa660e150d3ea5c0a369e1297d11177fc284524d6d5e40eb7ee4b400f6dfd6a10402904394e1694de300ddd565622e7ca7ed62970ff5add0b36a513b5d90d2194cf414ecc97e5dcc88698e06405dea09f49503c81cc61518f8aee882da6eeae09b4127a7fcc0c0829fca8fda3502ebf13ece0a90a8dfd05d8e514452247f79472c20683e2b1fde5ec14a2453bf00f9f1cd5a088d229a7fdfdfdc24f176fb9a8a409af70d894998957394d30a46668d71cd16907aa800ee9d96c2b9fc7fb5a7944a9b8d4f76609fc186e3c0a4d80fb9c8c236f76eb00bc24dd9abddef7d653740ece7141ac6175f7e9cab1cb0216e85adde43907b60c0581336b50ccd7682f28f00f7efd663df4d31701141657da989d236d16052c4b59fc46fb41657a26d7074fbc9dee602f7d03b86179e4c12bc0df253f815319dff12353a478d95febd5f902e363734e6e5ef4bf1865eb70750b9238be3382a51ded182569d112f37870d43465615ca9174d41f7f3b9eb780a28c7dba674075bbe04538ad669eef7716d1b7b252d49da3b00993f0c829860a1efafdcdc865d46f2f8aec9893b5bc607db33272e5b9f7cf134595e1ad5e8f34b1b7f93ca181c513afc4d8a531c36929e95cfbb4d268a9d94f80201000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0603860f0e0101ffffffff0188b6e1110000000023210383d0b37f59f4ee5e3e98a47e461c861d49d0d90c80e9e16f7e63686a2dc071f3ac67954a5b01000000010b1561554a46ec535c4972a3a16652b270ee4af847ec3bbfcf6ba663ebcfefcb1a00000049483045022100b9cd7c1c56d69d9b05d695f9ac86c1233427ec26860774a0eb4e6052fe11ca8502207eca5a4eda1ccf92ccdb501ab7d61cf084d0f4431f059e27ee13ce11f9aa159b01ffffffff0188130000000000002321020e46e79a2a8d12b9b5d12c7a91adb4e454edfae43c0a0cb805427d2ac7613fd9ac00000000"
Response:
duplicate

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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"
}

Network


The following RPC calls interact with the hushd software, and are made available through the hush-cli software.

addnode


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.

Arguments

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

Response

Name Type Description
(none)

Examples

Command:
./hush-cli addnode "192.168.0.6:8233" "onetry"
Response:
(none)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


clearbanned

The clearbanned method clears all banned IPs.

Arguments

Name Type Description
(none)

Response

Name Type Description
(none)

Examples

Command:
./hush-cli clearbanned
Response:
(none)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


disconnectnode “node”

The disconnectnode method instructs the daemon to immediately disconnect from the specified node.

Use getpeerinfo to determine the result.

Arguments

Name Type Description
“node” (string, required) the node’s address (see getpeerinfo for nodes)

Response

Name Type Description
(none)

Examples

Command:
./hush-cli disconnectnode "192.168.0.6:8233"
Response:
(none)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.
:::

Arguments

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

Response

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”

Examples

Command:
./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.

Command:
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


getconnectioncount

The getconnectioncount method returns the number of connections to other nodes.

Arguments

Name Type Description
(none)

Response

Name Type Description
n (numeric) the connection count

Examples

Command:
./hush-cli getconnectioncount
Response:
10

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": "getconnectioncount", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
  "result": 10,
  "error": null,
  "id": "curltest"
}

getdeprecationinfo


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.
:::

Arguments

Name Type Description
(none)

Response

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)

Examples

Command:
./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.

Command:
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


getnettotals

The getnettotals method returns information about network traffic, including bytes in, bytes out, and current time.

Arguments

Name Type Description
(none)

Response

Name Type Description
“totalbytesrecv” (numeric) total bytes received
“totalbytessent” (numeric) total bytes sent
“timemillis” (numeric) total cpu time

Examples

Command:
./hush-cli getnettotals
Response:
{
  "totalbytesrecv": 29853501,
  "totalbytessent": 15589555,
  "timemillis": 1536821874559
}

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


getnetworkinfo

The getnetworkinfo method returns an object containing various state info regarding p2p networking.

Arguments

Name Type Description
(none)

Response

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)

Examples

Command:
./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.

Command:
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


getpeerinfo

The getpeerinfo method returns data about each connected network node as a json array of objects.

Arguments

Name Type Description
(none)

Response

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

Examples

Command:
./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.

Command:
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


listbanned

The listbanned method lists all banned IP addresses and subnets.

Arguments

Name Type Description
(none)

Response

Name Type Description
“address” (string) the address/subnet that is banned
“banned_until” (numeric) the timestamp, at which point the ban will be removed

Examples

Command:
./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.

Command:
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


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.
:::

Arguments

Name Type Description
(none)

Response

Name Type Description
(none)

Examples

Command:
./hush-cli ping
Response:
(none)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.

Arguments

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)

Response

Name Type Description
(none)

::: tip
Use listbanned to view results.
:::

Examples

Command:
./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.

Command:
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)

Rawtransactions

The following RPC calls interact with the hushd software, and are made available through the hush-cli software.

createrawtransaction

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.
:::

Arguments

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

Response

Name Type Description
“transaction” (string) a hex string of the transaction

Examples

Command:
./hush-cli createrawtransaction '[{"txid":"9f44dc664882198b14e9a8c466d466efcdd070ccb6f57be8e2884aa11e7b2a30","vout":0}]' '{"RHCXHfXCZQpbUbihNHh5gTwfr7NXmJXmHi":0.01}'
Response:
0100000001302a7b1ea14a88e2e87bf5b6cc70d0cdef66d466c4a8e9148b19824866dc449f0000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000

You can find your rpcuser, rpcpassword, and rpcport in hush2.conf file.

Command:
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


decoderawtransaction “hexstring”

The decoderawtransaction method returns a json object representing the serialized, hex-encoded transaction.

Arguments

Name Type Description
“hex” (string, required) the transaction hex string

Response

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

Examples

Command:
./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.

Command:
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

decodescript “hex”


The decodescript method decodes a hex-encoded script.

Arguments

Name Type Description
“hex” (string) the hex encoded script

Response

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

Examples

Command:
./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.

Command:
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


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>.
:::

Arguments

Name Type Description
“hexstring” (string, required) the hex string of the raw transaction

Response

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

Examples

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:
a44feb2e788d0332e283d8ca69c6a20999944dccac93246cbf9b36d841b08c95

getrawtransaction


getrawtransaction “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.
:::

Arguments

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

Response (if verbose is not set, or set to 0)

Name Type Description
“data” (string) the serialized, hex-encoded data for ‘txid’

Response (if 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)

Examples

Command:
./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.

Command:
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


sendrawtransaction “hexstring” ( allowhighfees )

The sendrawtransction method submits raw transaction (serialized, hex-encoded) to local nodes and the network.

Also see createrawtransaction and signrawtransaction calls.

Arguments

Name Type Description
“hexstring” (string, required) the hex string of the raw transaction
allowhighfees (boolean, optional, default=false) whether to allow high fees

Response

Name Type Description
“hex” (string) the transaction hash in hex

Examples

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.

Command:
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


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>.
:::

Arguments

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”

Response

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

Examples

Command:
./hush-cli signrawtransaction "0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa40000000000ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000"
Response:
{
			  "hex": "0100000001958cb041d8369bbf6c2493accc4d949909a2c669cad883e232038d782eeb4fa4000000006a4730440220242c38740261799f9b6ccbde8f941e2567e86c84108c508d108d062ab9677b6e02206fea089b28c6d66d1c8f2343e1de7960dadafa3cf268c00f7dbe391cd8b9365f01210384c0db4f1eaa142a2745742b942f989375dbec32c55310a793225bb5c43cdc98ffffffff0140420f00000000001976a91456def632e67aa11c25ac16a0ee52893c2e5a2b6a88ac00000000",
			  "complete": true
}

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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"
}

Shielded



z_exportkey


z_exportkey “z_address”

The z_exportkey method reveals the private z_key corresponding to z_address.

::: tip
See also z_importkey.
:::

Arguments

Name Type Description
“z_address” (string, required) the z_address for the private key

Response

Name Type Description
“key” (string) the private key

Examples

Command:
./hush-cli z_exportkey "ztffWAUUY9PnLiBVXY2pnX67kfm71SevtPC5d9LLM3xZqehy4XxV1FeyxPWcHGTiCd7GtQ17gk5jDTQxhHB13K1A7HT6hZH"
Response:
DONOTUSExxxxxxxxxxxxxxxxV6EyPpaZFVDsqeNB6k8eoLFERdag

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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_exportviewingkey “z_address”

The z_exportviewingkey method reveals the viewing key corresponding to z_address.

::: tip
See also z_importviewingkey.
:::

Arguments

Name Type Description
“z_address” (string, required) the z_address for the viewing key

Response

Name Type Description
“vkey” (string) the viewing key

Examples

Command:
./hush-cli z_exportviewingkey "ztffWAUUY9PnLiBVXY2pnX67kfm71SevtPC5d9LLM3xZqehy4XxV1FeyxPWcHGTiCd7GtQ17gk5jDTQxhHB13K1A7HT6hZH"
Response:
ZiVtf1yjjR9DeDNNgd4kvRgS1oovQwfK6xt2csfhTwpbUVjnC9RrEeuVkAfJrxN1jDR3d7vR6XmLne4vC9SCYR5F9XMzW19VJ

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.

Arguments

Name Type Description
“filename” (string, required) the filename, saved to the directory indicated by the exportdir parameter at daemon runtime (required)

Response

Name Type Description
“path” (string) the full path of the destination file

Examples

Command:
./hush-cli z_exportwallet "test"
Response:
/home/myusername/mydirectory/test

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.
:::

Arguments

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

Response

Name Type Description
amount (numeric) the total amount received at this address (in the relevant COIN value)

Examples

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.

Command:
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


z_getnewaddress

The z_getnewaddress method returns a new z_address for receiving payments.

Arguments

Name Type Description
(none)

Response

Name Type Description
“z_address” (string) the new z_address

Examples

Command:
./hush-cli z_getnewaddress
Response:
ztbUD83kXgHt3A1M282wFvT9Ms6SiBCd6GSbQbPa2C7UtPojVZjPENytFqu7JxgnsgL9EN42xWnyhhzniHYSRJDnEPTgo3Y

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.
:::

Arguments

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

Response

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

Examples

Command:
./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.

Command:
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


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).

Arguments

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

Response

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

Examples

Command:
./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.

Command:
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


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.
:::

Arguments

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’)

Response

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

Examples

Command:
./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.

Command:
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_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.
:::

Arguments

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

Response

Name Type Description
(none)

Examples

Command:
./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.

Command:
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


z_validateaddress “zaddr”

The z_validateaddress method returns information about the given z address.

Arguments

Name Type Description
“zaddr” (string, required) the z address to validate

Response

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

Examples

Command:
./hush-cli z_validateaddress "zcWsmqT4X2V4jgxbgiCzyrAfRT1vi1F4sn7M5Pkh66izzw8Uk7LBGAH3DtcSMJeUb2pi3W4SQF8LMKkU2cUuVP68yAGcomL"
Response:
{
	"isvalid": true,
	"address": "ztdChvxs2Z97X7qeBwsnRLbxva1ZVgWhFWZxZTA5bC8XLt9RHF8uXn16MWCU8DhKEt4gTtKqQwzsrk85f5tThWMNoYds2oX",
	"payingkey": "d9c09cb974fbe0bf7e36a2318b46396c5112511f90749531428936867d83bd92",
	"transmissionkey": "5ce3250912758cbb591e3d585ef110992f25ed7694b88f55315b060698b75404",
	"ismine": true
}

z_importviewingkey


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.
:::

Arguments

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

Response

Name Type Description
(none)

Examples

Command:
./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.

Command:
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


z_importwallet “filename”

The z_importwallet method imports t address and z address keys from a wallet export file.

::: tip
See also z_exportwallet.
:::

Arguments

Name Type Description
“filename” (string, required) the wallet file

Response

Name Type Description
(none)

Examples

Command:
./hush-cli z_importwallet "/mydirectory/nameofbackup"
Response:
(none)

You can find your rpcuser, rpcpassword, and rpcport in hush.conf file.

Command:
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


z_listaddresses ( includeWatchonly )

The z_listaddresses method returns the list of z addresses belonging to the wallet.

::: tip
See also z_importviewingkey.
:::

Arguments

Name Type Description
includeWatchonly (bool, optional, default=false) also include watchonly addresses

Response

Name Type Description
“z_address” (string) a z address belonging to the wallet

Examples

Command:
./hush-cli z_listaddresses
Response:
[
		  "ztYMDvwUqi5FZLQy4so71ZGHXk2fDtEYU9HNns9DNYjXJr9PEzSL8Dq8NcdiRijsgCm4r3nNWA6dUrqW9suGd2F7uuj2BhP",
		  "ztbUD83kXgHt3A1M282wFvT9Ms6SiBCd6GSbQbPa2C7UtPojVZjPENytFqu7JxgnsgL9EN42xWnyhhzniHYSRJDnEPTgo3Y"
]

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


z_listoperationids

The z_listoperationids method returns the list of operation ids currently known to the wallet.

Arguments

Name Type Description
“status” (string, optional) filter result by the operation’s state e.g. “success”

Response

Name Type Description
“operationid” (string) an operation id belonging to the wallet

Examples

Command:
./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.

Command:
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


z_listreceivedbyaddress “address” ( minconf )

The z_listreceivedbyaddress method returns a list of amounts received by a z address belonging to the node’s wallet.

Arguments

Name Type Description
address (string) the private address.
minconf (numeric, optional, default=1) only include transactions confirmed at least this many times

Result

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

Examples

Command:
./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.

Command:
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


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)

Arguments

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

Results

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

Examples

Command:
./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.

Command:
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


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 fromaddresses array

The following special strings are accepted inside the fromaddresses array:

If a special string is given, any given addresses of that type will be ignored

Arguments

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

Response

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

Examples

Command:
./hush-cli z_mergetoaddress '["R1M72Sfpbz1BPpXFHz9m3CdqATR44Jvaydd"]' ztfaW34Gj9FrnGUEf833ywDVL62NWXBM81u6EQnM6VR45eYnXhwztecW1SjxA7JrmAXKJhxhj3vDNEpVCQoSvVoSpmbhtjf
Response:
(disabled)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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

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.

Arguments

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

Response

Name Type Description
“operationid” (string) an operationid to pass to z_getoperationstatus to get the result of the operation

Examples

Command:
./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.

Command:
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


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.

Arguments

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

Response

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

Examples

Command:
./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"
}

Util

The following RPC calls interact with the hushd software, and are made available through the hush-cli software.

createmultisig


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.

Arguments

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

Response

Name Type Description
“address” (string) the value of the new multisig address
“redeemScript” (string) the string value of the hex-encoded redemption script

Examples

Command:
./hush-cli createmultisig 2 "[\"RJnVEQgucK1iwiRjfTZmreXkF49KgTErDn\",\"RCVyjn9MQ8Tw6YRJnDcsx67kfsmfUgLdfw\"]"
Response:
{
	"address": "bZjsy6bt2ZdyHV5hfCNL2HsuA4eV63s5u6",
	"redeemScript": "52210384c0db4f1eaa142a2745742b942f989375dbec32c55310a793225bb5c43cdc9821021f527b7269ab18da85a50b7f45f572e8b017fce476de06cb80a2550ee7d4b11652ae"
}

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": "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


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.

Finding the OP RETURN Data From a CC Transaction

The OP RETURN data from a CC transaction can be found by following these steps:

Arguments

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

Response

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

Examples

Command:
./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.

Command:
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


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.

Arguments

Name Type Description
nblocks (numeric) the number of blocks within which the fee should be tested

Response

Name Type Description
n (numeric) the estimated fee

Examples

Command:
./hush-cli estimatefee 6
Response:
0.00019376

estimatepriority


estimatepriority 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.

Arguments

Name Type Description
nblocks (numeric) a statement indicating within how many blocks the transaction should be confirmed

Response

Name Type Description
n (numeric) the estimated priority

Examples

Command:
./hush-cli estimatepriority 6
Response:
-1

invalidateblock


invalidateblock “hash”

The invalidateblock method permanently marks a block as invalid, as if it violated a consensus rule.

Arguments

Name Type Description
hash (string, required) the hash of the block to mark as invalid

Response

Name Type Description
(none)

Examples

Command:
./hush-cli invalidateblock "02f51fb2793b0728050c5e983ffed669594e0a2dda01dcb7a68d129fd87436e0"
Response:
(none)

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": "invalidateblock", "params": ["02f51fb2793b0728050c5e983ffed669594e0a2dda01dcb7a68d129fd87436e0"] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
	"result": null,
	"error": null,
	"id": "curltest"
}

reconsiderblock


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.

Arguments

Name Type Description
hash (string, required) the hash of the block to reconsider

Response

Name Type Description
(none)

Examples

Command:
./hush-cli reconsiderblock "02f51fb2793b0728050c5e983ffed669594e0a2dda01dcb7a68d129fd87436e0"
Response:
(none)

txnotarizedconfirmed


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.

Arguments

Name Type Description
“txid” (string, required) the transaction id

Response

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

Examples

Command:
./hush-cli txnotarizedconfirmed ce1e3df1fb24ab3301b4032c3a0af466ca03b9365f8c649511bdd72f5519fecb
Response:
{
	"result": true
}

validateaddress


validateaddress “hushaddress”

The validateaddress method returns information about the given address.

Arguments

Name Type Description
“address” (string, required) the address to validate

Response

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

Examples

Command:
./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


verifymessage “address” “signature” “message”

The verifymessage method verifies a signed message.

::: tip
See also signmessage.
:::

Arguments

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

Response

Name Type Description
true/false (boolean) indicates whether the signature is verified

Examples

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

Wallet

The following RPC calls interact with the hushd software, and are made available through the hush-cli software.

addmultisigaddress


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.
:::

Arguments

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

Response

Name Type Description
“address” (string) an address associated with the keys

Examples

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.

Command:
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


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.
:::

Arguments

Name Type Description
“destination” (string, required) the destination filename, saved in the directory set by the exportdir runtime parameter

Response

Name Type Description
“path” (string) the full path of the destination file

Examples

./hush-cli backupwallet "mybackupdata"
		
		/home/myusername/myexportdir/mybackupdata

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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

dumpprivkey “address”

The dumpprivkey method reveals the private key corresponding to the indicated address.

::: tip
See also importprivkey.
:::

Arguments

Name Type Description
“address” (string, required) the address for the private key

Response

Name Type Description
“data” (string) the private key

Examples

Command:
./hush-cli dumpprivkey "RTcwYaQPDVN7V9SdfFHARWnoB7vcpSfdvs"
Response
DONOTUSExxxxxxxxxxxxxxxxxxxx4KkCmRnnSg7iXvAUjoYivC8K

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.
:::

Arguments

Name Type Description
“filename” (string, required) the filename, saved in the folder set by the exportdir runtime parameter

Response

Name Type Description
“path” (string) the full path of the destination file

Examples

Command:
./hush-cli dumpwallet "test"
Response:
/home/myusername/myexportdir/test

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.

Arguments

Name Type Description
passphrase (string) the passphrase for wallet encryption; the passphrase must be at least 1 character, but should be many

Response

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.

Examples

Encrypt your wallet
Command:
./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.
Unlock the wallet for 60 seconds
Command:
./hush-cli walletpassphrase "mypassphrase" 60
Response
(disabled)
Lock the wallet again by removing the passphrase
Command:
./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


getaccount “address”

The getaccount method returns the account associated with the given address.

Arguments

Name Type Description
“address” (string, required) the address

Response

Name Type Description
“accountname” (string) the account address

Examples

Command:
./hush-cli getaccount "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ"
Response
(deprecated)

You can find your rpcuser, rpcpassword, and rpcport in hush3.confhush3 hush3file.

Command:
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


getaccountaddress “account”

::: tip
DEPRECATED
:::

The getaccountaddress method returns the current address for receiving payments to this account.

Arguments

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

Response

Name Type Description
“address” (string) the account address

Examples

Command:
./hush-cli getaccountaddress
Response
(deprecated)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


getaddressesbyaccount “account”

::: tip
DEPRECATED
:::

The getaddressesbyaccount method returns the list of addresses for the given account.

Arguments

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

Response:

Name Type Description
“address” (string) an address associated with the given account

Examples

Command:
./hush-cli getaddressesbyaccount "tabby"
Response
(deprecated)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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

getbalance ( “account” minconf includeWatchonly )

The getbalance method returns the server’s total available balance.

::: tip
The account input is deprecated.
:::

Arguments

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)

Response

Name Type Description
amount (numeric) the total amount

Examples

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


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


getnewaddress ( “account” )

The getnewaddress method returns a new address for receiving payments.

Arguments

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

Response

Name Type Description
“address” (string) the new address

Examples

Command:
./hush-cli getnewaddress
Response:
"RYDuQ2oQCCz1PQNxUQTDAaRinWKiCoT2E6"

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.
:::

Arguments

Name Type Description
(none)

Response

Name Type Description
“address” (string) the address

Examples

Command:
./hush-cli getrawchangeaddress
Response:
RS8oqzbjShKhftmuk2RpRmHH2hTAukp6yP

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


getreceivedbyaccount “account” ( minconf )

::: tip
DEPRECATED
:::

The getreceivedbyaccount method returns the total amount received by account in transactions with at least minconf confirmations.

Arguments

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

Response

Name Type Description
amount (numeric) the total amount received for this account

Examples

Command:
./hush-cli getreceivedbyaccount ""
Response
(deprecated)

getreceivedbyaddress


getreceivedbyaddress “address” ( minconf )

The getreceivedbyaddress method returns the total amount received by the given address in transactions with at least minconf confirmations.

Arguments

Name Type Description
“address” (string, required) the address for transactions
minconf (numeric, optional, default=1) only include transactions confirmed at least this many times

Response

Name Type Description
amount (numeric) the total amount of the relevant coin received at this address

Examples

Command:
./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.

Command:
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


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.

Arguments

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

Response

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

Examples

Command:
./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.

Command:
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


getunconfirmedbalance

The getunconfirmedbalance method returns the server’s total unconfirmed balance.

Arguments

Name Type Description
(none)

Response

Name Type Description
(none)

Examples

Command:
./hush-cli getunconfirmedbalance
Response
10.05000000

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


getwalletinfo

The getwalletinfo method returns an object containing various information about the wallet state.

Arguments

Name Type Description
(none)

Response

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

Examples

Command:
./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.

Command:
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


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.
:::

Arguments

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

Response

Name Type Description
(none)

Examples

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.

Command:
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"
}

importprivkey


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.
:::

Arguments

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

Response

Name Type Description
addresses (string) the public address

Examples

Command:
./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.

Command:
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


importwallet “filename”

The importwallet method imports transparent-address keys from a wallet-dump file (see dumpwallet).

Arguments

Name Type Description
“filename” (string, required) the wallet file

Response

Name Type Description
(none)

Examples

Command:
./hush-cli importwallet "path/to/exportdir/nameofbackup"
Response
(none)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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

keypoolrefill ( newsize )

The keypoolrefill method refills the keypool.

Arguments

Name Type Description
newsize (numeric, optional, default=100) the new keypool size

Response

Name Type Description
(none)

Examples

Command:
./hush-cli keypoolrefill
Response
(none)
Command:
./hush3-cli keypoolrefill 100
Response
(none)

You can find your rpcuser, rpcpassword, and rpcport in .conf file.

Command:
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


listaccounts ( minconf includeWatchonly )

::: tip
DEPRECATED
:::

The listaccounts method returns an object that has account names as keys and account balances as values.

Arguments

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’)

Response

Name Type Description
“account_number” (numeric) the property name is the account name, and the value is the total balance for the account

Examples

Command:
./hush-cli listaccounts 6
Response
(deprecated)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.

Arguments

Name Type Description
(none)

Response

Name Type Description
“address”, (string) the address
amount, (numeric) the amount
“account” (string, optional) (DEPRECATED) the account

Examples

Command:
./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


listlockunspent

The listlockunspent method returns a list of temporarily non-spendable outputs.

::: tip
See the lockunspent call to lock and unlock transactions for spending.
:::

Arguments

Name Type Description
(none)

Response

Name Type Description
“txid” (string) the transaction id locked
“vout” (numeric) the vout value

Examples

Command:
./hush-cli listlockunspent
Response
[
		  {
			"txid": "d7ba45296c66e16eb61f27a4eef8848c7f5579fe801f277c1b0e074a4f47d6fd",
			"vout": 0
		  }
]

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": "listlockunspent", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:$rpcport/
Response:
{
		  "result": [
			{
			  "txid": "d7ba45296c66e16eb61f27a4eef8848c7f5579fe801f277c1b0e074a4f47d6fd",
			  "vout": 0
			}
		  ],
		  "error": null,
		  "id": "curltest"
}

listreceivedbyaccount


listreceivedbyaccount ( minconf includeempty includeWatchonly )

::: warning
DEPRECATED
:::

The listreceivedbyaccount method lists balances by account.

Arguments

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’)

Response

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)

Examples

Command:
./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.

Command:
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


listreceivedbyaddress ( minconf includeempty includeWatchonly)

The listreceivedbyaddress method lists balances by receiving address.

Arguments

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’)

Response

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)

Examples

Command:
./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.

Command:
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


listsinceblock ( “blockhash” target-confirmations includeWatchonly )

The listsinceblock method queries all transactions in blocks since block blockhash, or all transactions if blockhash is omitted.

Arguments

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’)

Response

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

Examples

Command:
./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.

Command:
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


listtransactions ( “account” count from includeWatchonly )

The listtransactions method returns up to count most recent transactions skipping the first from transactions for account.

Arguments

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)

Response

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

Examples

Command:
./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.

Command:
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


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.

Arguments

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

Response

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)

Examples

Command:
./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.

Command:
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


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.
:::

Arguments

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

Response

Name Type Description
true/false (boolean) whether the command was successful

Examples

Command:
./hush-cli lockunspent false '[{"txid":"d7ba45296c66e16eb61f27a4eef8848c7f5579fe801f277c1b0e074a4f47d6fd","vout":0}]'
Response:
true

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


move “fromaccount” “toaccount” amount ( minconf “comment” )

::: tip
DEPRECATED
:::

The move method moves a specified amount from one account in your wallet to another.

Arguments

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

Response

Name Type Description
true/false (boolean) true if successful

Examples

Command:
./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.

Command:
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


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.

Arguments

Name Type Description
(none)

Response

Name Type Description
“transaction_id” (string) an array of the rebroadcasted transaction id’s

Examples

Command:
./hush-cli resendwallettransactions
		
Response:
[
		  "4e847051279ead30fb2d8d53cc0d4649f62c85a44b23f90152d2ef4ed6af2006"
]

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


sendfrom “account” “address” amount ( minconf “comment” “comment-to” )

::: tip
DEPRECATED: Use sendtoaddress instead.
:::

The sendfrom method sends an amount from account to address.

Arguments

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

Response

Name Type Description
“transaction_id” (string) the transaction id

Examples

Command:
./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.

Command:
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


sendmany “account” { “address”: amount, … } ( minconf “comment” [ “address”, … ] )

The sendmany method can send multiple transactions at once. Amounts are double-precision floating point numbers.

Arguments

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

Response

Name Type Description
“transaction_id” (string) the transaction id for the send; only 1 transaction is created regardless of the number of addresses

Examples

Command:
./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.

Command:
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


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.

Arguments

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

Response

Name Type Description
“transaction_id” (string) the transaction id

Examples

Command:
./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.

Command:
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


setaccount “address” “account”

::: tip Notice
DEPRECATED
:::

The setaccount method sets the account associated with the given address.

Arguments

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

Examples

Command:
./hush-cli setaccount "RBtNBJjWKVKPFG4To5Yce9TWWmc2AenzfZ" "tabby"
Response:
(deprecated)

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


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.
:::

Arguments

Name Type Description
pubkey (string) the desired pubkey

Response

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

Examples

Command:
./hush3-cli setpubkey 0260801166cebdc9be1e3460ba9e4959fb29feee7725f565ffc296fa4636aa706f
Response:
{
		  "address": "RK47DQhSHJEMGFSiRtgki67xG3u1Qsq1Gw",
		  "ismine": true,
		  "pubkey": "0260801166cebdc9be1e3460ba9e4959fb29feee7725f565ffc296fa4636aa706f"
}

You can find the rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


settxfee amount

The settxfee method sets the transaction fee per kB.

Arguments

Name Type Description
amount (numeric, required) the transaction fee in COIN/kB rounded to the nearest 0.00000001

Response

Name Type Description
true/false (boolean) returns true if successful

Examples

Command:
./hush-cli settxfee 0.00001
Response
true

You can find your rpcuser, rpcpassword, and rpcport in hush3.conf file.

Command:
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


signmessage “address” “message”

The signmessage method signs a message via the private key of an address.

Arguments

Name Type Description
“address” (string, required) the address to use for the private key
“message” (string, required) the message

Response

Name Type Description
“signature” (string) the signature of the message encoded in base 64

Examples

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.

Command:
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


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.

Arguments

Name Type Description
(none)

Response

Name Type Description
(none)

Examples

Command:
./hush-cli walletlock
Response:
(none)

walletpassphrase


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.

Arguments

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

Response

Name Type Description
(none)

Examples

Command:
./hush-cli walletpassphrase
Response
(none)

walletpassphrasechange


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".

Arguments

Name Type Description
“oldpassphrase” (string) the old passphrase
“newpassphrase” (string) the new passphrase

Response

Name Type Description
(none)

Examples

Command:
./hush-cli walletpassphrasechange "oldpassphrase" "newpassphrase"
		
Response:
(none)

zcbenchmark


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.

Arguments

Name Type Description
“benchmarktype” (string, required) the type of the benchmark
“samplecount” (numeric) the number of samples to take

Response

Name Type Description
“runningtime” (numeric) the time it took to run the selected benchmarktype

Output:

[
		  {
			"runningtime": runningtime
		  },
		  {
			"runningtime": runningtime
		  }
		  ...
]

zcrawjoinsplit


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

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


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
}

zcsamplejoinsplit


Perform a joinsplit and return the JSDescription.

Creating Hush Smart Chains

Creating Hush Smart Chains



Introduction

Requirements for Creating a New Chain


::: 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 Info for Connecting At Least Two Nodes

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.

Part I: Creating a New Hush Smart Chain

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:

Mac & GNU/Linux

./hushd -ac_name=HUSH3 -ac_supply=123456789 -addnode=<IP address of the second node> &

Windows

./hushd.exe -ac_name=HUSH3 -ac_supply=123456789 -addnode=<IP address of the second node> &

Verify the Response

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.
:::

Part II: Connecting the Second Node

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”>

Node1

newaddress=$(./hush-cli -ac_name=HUSH3 getnewaddress)
	echo $newaddress
# Copy the returned address for use on the other node

Node2

# Send ten coins to the address generated on the first node
	./hush-cli -ac_name=HUSH3 sendtoaddress Address_from_the_first_node 10

Node1

./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:

Querying the Smart Chain

Using 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.

Example commands

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

Secure this Smart Chain with Delayed Proof of Work

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.

A Note About Low-Activity Blockchains

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

Contact

Join us!

Hush is a community project. Everyone is welcomed with open arms!

Discord Telegram Reddit Bitcointalk GitHub