class RepositoryBtcBlockStoreWithCache implements BtcBlockStoreWithCache {

    @Override
    public synchronized StoredBlock getChainHead() {
        byte[] ba = repository.getStorageBytes(contractAddress, DataWord.fromString(BLOCK_STORE_CHAIN_HEAD_KEY));
        if (ba == null) {
           return null;
        }
        return byteArrayToStoredBlock(ba);
    }

    public  RepositoryBtcBlockStoreWithCache(NetworkParameters btcNetworkParams, Repository repository, Map<Sha256Hash, StoredBlock> cacheBlocks, RskAddress contractAddress);

}