modified oneFreeBlockRemaining()