implement concurrency in block replayer