changed blockchain data structure, use asynchronous block store