add virtual to IBlock.h