class BlockExecutor {

    @VisibleForTesting
    public boolean executeAndValidate(Block block, BlockHeader parent) {
        BlockResult result = execute(block, parent, false, false);

        return this.validate(block, result);
    }

    public  BlockExecutor(
            ActivationConfig activationConfig,
            RepositoryLocator repositoryLocator,
            StateRootHandler stateRootHandler,
            TransactionExecutorFactory transactionExecutorFactory);

}