added blockwise