optimization of checkBlock()