def print_blockchain_database(base_db):
    node_1 = MainnetChain(base_db, GENESIS_PRIVATE_KEY.public_key.to_canonical_address(), GENESIS_PRIVATE_KEY)

    chain_head_hashes = node_1.chain_head_db.get_head_block_hashes_list()

    i = 0
    for head_hash in chain_head_hashes:
        print("Chain number {}".format(i))
        chain = node_1.get_all_blocks_on_chain_by_head_block_hash(head_hash)

        j = 0
        for block in chain:
            print("Block number {}".format(i))
            print(block_to_dict(block, True, node_1))
            j += 1
        i += 1
log_level = getattr(logging, 'DEBUG')
#log_level = getattr(logging, 'INFO')
logger, log_queue, listener = setup_helios_logging(log_level)
logger.propagate = False
#logger.info(HELIOS_HEADER)
from helios.rpc.format import block_to_dict

print("Instance 1 wallet address = {}".format(
    RECEIVER.public_key.to_address()))
base_db = LevelDB('/home/tommy/.local/share/helios/mainnet/chain/full')
#base_db = LevelDB('/WWW/.local/share/helios/mainnet/chain/full')

node_1 = MainnetChain(base_db, RECEIVER.public_key.to_canonical_address(),
                      RECEIVER)

queue_block = node_1.queue_block

chain_head_hashes = node_1.chain_head_db.get_head_block_hashes_list()

i = 0
for head_hash in chain_head_hashes:
    print("Chain number {}".format(i))
    chain = node_1.get_all_blocks_on_chain_by_head_block_hash(head_hash)

    j = 0
    for block in chain:
        print("Block number {}".format(i))
        print(block_to_dict(block, False, node_1))
        j += 1
    i += 1